Jquery通過Ajax方式來提交Form表單的具體實現(xiàn)
更新時間:2013年11月07日 17:26:55 投稿:whsnow
提交Form表單的方法有很多,在本文為大家介紹下Jquery通過Ajax方式是如何提交Form表單的
今天剛好看到Jquery的ajax提交數(shù)據(jù)到服務(wù)器的方法,原文是:
保存數(shù)據(jù)到服務(wù)器,成功時顯示信息。
jQuery 代碼:
復(fù)制代碼 代碼如下:
$.ajax({
type: "POST",
url: "some.php",
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
});
后來我就想了一下,我要提交form表單有沒有辦法呢?但是我不可能每個fom的input都寫一次var demo=$("#divname").val();的.
后來,今天我看到一個方法,就是.map,就做出一下想法了,可以借鑒喲;
html代碼如下,下面我要提交Form 的id為dlg_form的所有input數(shù)據(jù),
復(fù)制代碼 代碼如下:
<form id="dlg_form" method="post">
<div class="fitem">
<label> 房間:</label>
<input name="RoomName" style="padding: 2px; width: 135px; border: 1px solid #A4BED4;" required />
</div>
<div class="fitem">
<label> 建筑:</label>
<input name="RoomName" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 部門:</label>
<input name="RoomName" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<fieldset>
<legend>
<label>
<input type="checkbox" id="ktkzq" name="ktkzq" value="ktkzq"/>
空調(diào)控制器</label>
</legend>
<div class="fitem">
<label> 端口:</label>
<input name="kt_dk" id="kt_dk" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 地址:</label>
<input name="kt_dz" id="kt_dz" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 工作方式:</label>
<input name="kt_gzfs" id="kt_gzfs" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 是否啟用:</label>
<input name="kt_sfqy" id="kt_sfqy" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
</fieldset>
<fieldset>
<legend>
<label>
<input type="checkbox" id="dgkzq" name="dgkzq" value="dgkzq"/>
燈光控制器</label>
</legend>
<div class="fitem">
<label> 端口:</label>
<input name="dg_dk" id="dg_dk" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 地址:</label>
<input name="dg_dz" id="dg_dz" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 工作方式:</label>
<input name="dg_gzfs" id="dg_gzfs" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
<div class="fitem">
<label> 是否啟用:</label>
<input name="dg_sfqy" id="dg_sfqy" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
</fieldset>
<div class="fitem">
<label style=" width:100px;">
<input type="checkbox" id="zongbiao" name="zongbiao" value="zongbiao"/>
安裝了總表:</label>
</div>
<div class="fitem">
<label> 總表電能節(jié)點:</label>
<input name="zbdnjd" id="zbdnjd" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
</form>
看看我的方法,首先我們把所有的input的name和value都取下來,
js代碼如下:
復(fù)制代碼 代碼如下:
var str_data=$("#dlg_form input").map(function(){
return ($(this).attr("name")+'='+$(this).val());
}).get().join("&") ;
alert(data);
ps:你alert一下,你會發(fā)現(xiàn),這里面的架構(gòu)就是divname=xxx&divname2=xxxx等等,
然后在回頭看看ajax提交的:
復(fù)制代碼 代碼如下:
$.ajax({
type: "POST",
url: "some.php",
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
});
有沒有發(fā)現(xiàn),只要我們把我們上面獲取到的,放到data里面就可以了?
完整的代碼,修改后應(yīng)該是
復(fù)制代碼 代碼如下:
$.ajax({
var str_data=$("#dlg_form input").map(function(){
return ($(this).attr("name")+'='+$(this).val());
}).get().join("&") ;
type: "POST",
url: "some.php",
data: str_data,
success: function(msg){
alert( "Data Saved: " + msg );
}
});
ok,就這么簡單,如果適用的話,可以拿去用喲...
呵呵.
如果有問題,也歡迎提出來.
相關(guān)文章
基于jquery實現(xiàn)的銀行卡號每隔4位自動插入空格的實現(xiàn)代碼
這篇文章主要介紹了基于jquery實現(xiàn)的銀行卡號每隔4位自動插入空格的實現(xiàn)代碼,需要的朋友可以參考下2016-11-11jquery判斷當(dāng)前瀏覽器的實現(xiàn)代碼
這篇文章主要介紹了jquery判斷當(dāng)前瀏覽器的實現(xiàn)代碼,需要的朋友可以參考下2015-11-11jQuery實現(xiàn)點擊按鈕彈出可拖拽模態(tài)對話框完整實例【測試可用】
這篇文章主要介紹了jQuery實現(xiàn)點擊按鈕彈出可拖拽模態(tài)對話框的方法,結(jié)合完整實例形式分析了jQuery調(diào)用模態(tài)對話框的基本原理、實現(xiàn)方法與相關(guān)操作技巧,需要的朋友可以參考下2023-04-04jQuery插件select2利用ajax高效查詢大數(shù)據(jù)列表(可搜索、可分頁)
select2是一款jQuery插件,是普通form表單select組件的升級版。 接下來通過本文給大家介紹jQuery插件select2利用ajax高效查詢大數(shù)據(jù)列表(可搜索、可分頁),需要的的朋友參考下吧2017-05-05