如何用ajax提交多组同样的数据(数组)到后台?
我在AJAX中這樣寫
$("#subbutton").click(function(){
var machineCode_1=$("#machineCode_1").val();
var machineCode_2=$("#machineCode_2").val();
var machineCode_3=$("#machineCode_3").val();
var machineCode_4=$("#machineCode_4").val();
var machineCode_5=$("#machineCode_5").val();
$.ajax({
type: "POST",
contentType: "application/json",
url: "./system/Dealer_addAllMachCode",
data: {machinearr: ([machineCode_1,machineCode_2,machineCode_3,machineCode_4,machineCode_5]).join(";")},
dataType: 'json',
success: function(result) {
alert("成功增加");
}
});
});
后臺ssm框架:machinearr 并且 get set
debug 報空指針錯誤
machinearr 沒有數據。后來經過查找 詢問,找到錯誤原因,application/json需要改成
form的enctype屬性為編碼方式,常用有兩種:application/x-www-form-urlencoded和multipart /form-data,默認為application/x-www-form-urlencoded。 當action為get時候,瀏覽器用x-www-form-urlencoded的編碼方式把form數據轉換成一個字串(name1=value1& amp;name2=value2...),然后把這個字串append到url后面,用?分割,加載這個新的url。 當action為post時候,瀏覽器把form數據封裝到http body中,然后發送到server。 如果沒有type=file的控件,用默認的application/x-www-form-urlencoded就可以了。 但是如果有type=file的話,就要用到multipart/form-data了。瀏覽器會把整個表單以控件為單位分割,并為每個部分加上 Content-Disposition(form-data或者file),Content-Type(默認為text/plain),name(控件 name)等信息,并加上分割符(boundary)。
總結:客戶端提交的contentType只能為application/x-www-form-urlencoded or multipart/form- data,二進制數據使用多重編碼。前面默認編碼,即字符串,后者為文件。但如果從服務器下載的話編碼就很多了,比如你說的 application/json,text/plan,application/image.....等都可以。
總結
以上是生活随笔為你收集整理的如何用ajax提交多组同样的数据(数组)到后台?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: U3D学习13-数据存储
- 下一篇: git在实际开发中的应用