我在後面的代碼中調用Web方法,並接受4個以上字符串的Method Signature。我正在創建一個params變量並使用它來添加所有我想傳遞給該方法的輸入字段。ASP.NET Web窗體jQuery AJAX將多個參數傳遞給Web方法
var params = {
showStartDate: showStartDate,
showEndDate: showEndDate,
arrivalDate: arrivalDate,
pickUpDate: pickUpDate
};
那麼我如何在我的AJAX調用中傳遞「params」?下面是我目前的代碼,似乎沒有工作。我不想在數據部分顯式傳遞每個參數。
$.ajax({
type: "POST",
url: "OrderSummary.aspx/JSONUpdateOrder",
async: false,
data: "{'" + params + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
}
});
你肯定這與Web方法?我的Web方法沒有被稱爲只是通過你的建議「params」。參數是否必須與方法簽名的順序相同?我不這麼認爲...... – aherrick 2009-09-10 13:28:51
我不會假設任何有關如何良好的命令參數必須。嘗試使該順序與服務器端代碼相匹配。當你嘗試這個時,你會收到某種錯誤信息嗎? – 2009-09-10 13:39:30
沒有錯誤消息,它只是沒有擊中我的Web方法的中斷點。我可以解釋每個變量是這樣的,但我不想爲每個變量都這樣做...... data:「{'showStartDate':'」+ params.showStartDate +「'}」 – aherrick 2009-09-10 13:57:02