var url="service/signProcess.aspx";
//sets the important hidden field of the form by which server decides what to send
$('#hdnReqType2').val('sign87162');
var data=$("#frmLogin").serializeArray();
var success=function(rdata, textStatus, jqXHR) {
console.log(rdata);
};
var fail=function(jqXHR, textStatus, errorThrown) {
console.log("Error" + errorThrown + " " + textStatus);
}
$.post(url,data,success,"text").fail(fail);
我在 chrome 中打开的页面“ http://fsa.citop.in/lnct/ ”的控制台中使用它(当页面的登录表单为空时)并得到一个 JSON 字符串作为响应。
我在https://api.jquery.com/serializeArray/发现 serializeArray() 返回具有名称和值的对象数组。所以当我使用
var data=[{name :"txtLogId",value: ""},{name:"txtLogPass",value: ""},{name:"hdnReqType2",value: "sign87162"}];
我认为它与 $("#frmLogin").serializeArray() 返回的对象等效。服务器给了我一个 HTML 页面作为响应。
我用数据变量的版本尝试了 console.log(data) 并且找不到任何区别。请解释一下数据版本和 serailizeArray() 的正确等效对象之间的区别。