2013-04-24 72 views
0

當嘗試將JSON發送到我的服務器時出現一些錯誤,我只是想確保我有這個部分是正確的。發送JSON並使用動態數據參數

我擔心的部分是數據參數。數據參數是動態的,我只想確保下面的方法是形成它的有效方法。

我這樣形成:dataObj [itemName] = itemValue;

這是我如何實現:

var itemName = ""; 
var itemValue = ""; 
var dataObj = {}; 

if (divId == "CustomerDiv") { 
    itemName = "CustomerId"; 
    itemValue = id; 
} else { 
    itemName = "OwnerId"; 
    itemValue = id; 
} 
var ajaxMethod = "http://localhost:50151/api/webmethod/"; 
dataObj[itemName] = itemValue; 
$.ajax({ 
    type: "PATCH", 
    url: ajaxMethod, 
    dataType: "json", 
    data: dataObj 
}); 

這將是形成數據參數的有效方法是什麼?

謝謝!

+0

不應該'''是'GET','POST','PUT'或'DELETE'之一嗎? – techfoobar 2013-04-24 14:11:06

回答

1

你確實使用了正確的合成器來生成你的數據對象。 dataObj的結果將是{CustomerId: XX}(例如)。

請注意,type: "PATCH"不正確,因爲type需要正確的HTTP方法(如GET,POST ...)。

1

我沒有看到你構建動態參數的方式有什麼問題。您是否嘗試過調試以確保在您的ajax調用之前該對象看起來正確?它應該是形式爲{'CustomerId': val}{ 'OwnerId': val }的簡單對象。我注意到了a post which may be related。它說「PATCH」在jQuery的所有版本中都不可用。它也表示並非所有的瀏覽器都支持補丁。

您使用的是jQuery的哪個版本?什麼是您的瀏覽器和版本?你收到什麼錯誤?