2016-04-24 84 views
1
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); 

我的頁面「http://fsa.citop.in/lnct/」的控制檯中使用這個打開(當頁面的登錄表單爲空),並得到了JSON字符串作爲響應。jQuery的serializeArray()等價物

我發現在https://api.jquery.com/serializeArray/ serializeArray()返回具有名稱和值的對象數組。 所以當我用

var data=[{name :"txtLogId",value: ""},{name:"txtLogPass",value: ""},{name:"hdnReqType2",value: "sign87162"}]; 

,我認爲是反對由$返回等價的對象( 「#frmLogin」)。serializeArray()。服務器給了我一個HTML頁面作爲迴應。

我試着console.log(數據)與兩個版本的數據變量,並找不到任何區別。請解釋一下數據版本和serailizeArray()的正確等價對象之間的區別。

+0

使用哪個數據比較** $('#frmLogin')的結果serializeArray()** – wrufesh

+0

您何時向服務器發送**請求**以獲取**響應**。 – wrufesh

+0

我比較了$('#frmLogin')。serializeArray()與[{name:「txtLogId」,value:「」},{name:「txtLogPass」,value:「」},{name:「hdnReqType2」,value :「sign87162」}]。 –

回答

0

數據論點成功回調是響應對象(JSON)。 前成功功能你數據變量與數據論點成功回調衝突。 我建議你改變數據的名稱變量或更改名稱數據參數成功函數。

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(dat_a, textStatus, jqXHR) { 
     console.log(dat_a); 
}; 

var fail=function(jqXHR, textStatus, errorThrown) { 
     console.log("Error" + errorThrown + " " + textStatus); 
}; 
$.post(url,data,success,"text").fail(fail); 

在這裏,在上面的代碼我在成功回調函數改變數據參數dat_a

+0

是的。對不起。但我正在談論請求中發送的數據。現在我再次糾正了我的問題。 –