国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Jquery通過Ajax方式來提交Form表單的具體實現

2019-11-20 21:45:44
字體:
來源:轉載
供稿:網友
今天剛好看到Jquery的ajax提交數據到服務器的方法,原文是:

保存數據到服務器,成功時顯示信息。
jQuery 代碼:
復制代碼 代碼如下:

$.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數據,
復制代碼 代碼如下:

<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"/>
空調控制器</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> 總表電能節點:</label>
<input name="zbdnjd" id="zbdnjd" disabled="disabled" class="easyui-combobox" style="padding: 2px; width: 141px; " required />
</div>
</form>

是不是很多,如果要你每個input都寫的話,是不是要吐血?
看看我的方法,首先我們把所有的input的name和value都取下來,
js代碼如下:
復制代碼 代碼如下:

var str_data=$("#dlg_form input").map(function(){
return ($(this).attr("name")+'='+$(this).val());
}).get().join("&") ;
alert(data);

ps:你alert一下,你會發現,這里面的架構就是divname=xxx&divname2=xxxx等等,

然后在回頭看看ajax提交的:
復制代碼 代碼如下:

$.ajax({
type: "POST",
url: "some.php",
data: "name=John&location=Boston",
success: function(msg){
alert( "Data Saved: " + msg );
}
});

有沒有發現,只要我們把我們上面獲取到的,放到data里面就可以了?

完整的代碼,修改后應該是
復制代碼 代碼如下:

$.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,就這么簡單,如果適用的話,可以拿去用喲...

呵呵.

如果有問題,也歡迎提出來.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 马鞍山市| 彰化市| 江口县| 鹤山市| 阿瓦提县| 德令哈市| 紫云| 惠东县| 雷波县| 赤水市| 醴陵市| 额尔古纳市| 中西区| 汪清县| 福安市| 宣恩县| 咸宁市| 衡东县| 静乐县| 葫芦岛市| 五原县| 赤城县| 怀远县| 唐海县| 留坝县| 商丘市| 互助| 兰考县| 雷州市| 潼南县| 元氏县| 太仆寺旗| 策勒县| 二连浩特市| 溧阳市| 渭源县| 宝丰县| 扎鲁特旗| 黄冈市| 黔西县| 江门市|