字符串到asp.net web服務因爲它是現在我創建一個JavaScript對象,然後字符串化它,把它放在一個隱藏的文本框,我後面的代碼可以讀取此字符串。然後我使用JSON.NET解析可以正常工作的字符串。我現在嘗試使用ajax將其發佈到我的Web服務,但在如何發送字符串時遇到了一些問題。我已經嘗試了很多方法,但得到像如何通過使用jQuery/JSON/AJAX
Invalid JSON primitive: myString.
常見的錯誤,所以我檢查了這一點http://encosia.com/2010/05/31/asmx-scriptservice-mistake-invalid-json-primitive/並將其與硬編碼值的作品,但我想用一個變量。
JavaScsript創建對象:
for (var i = 0; i < results.rows.length; i++) {
var row = results.rows.item(i);
var customer = new Object();
customer.id = row['id']
customer.name = row['name']
var customerString = JSON.stringify(customer);
$.ajax({
type: "POST",
url: "synchronise.asmx/synchroniseCustomers",
data: "synchroniseCustomers: " + customerString,
contentType: "application/json; charset=utf-8",
dataType: "json",
error: function (xhr, status) {
alert("An error occurred: " + status);
},
success: function (msg) {
alert("success");
}
});
}
的WebMethod:
public void synchroniseCustomers(string customerString)
{
JObject o = JObject.Parse(customerString);
string id = (string)o["id"];
string name = (string)o["name"];
如果我使用data: '{ FirstName: "Dave", LastName: "Ward" }'
在上面的例子中的作品,但我想傳遞一個字符串代替。
有什麼建議嗎?
感謝
戴夫嗨,用數據:「{‘synchroniseCustomers’:」 + customerString +「}」 我仍然得到同樣的錯誤,我試圖做「synchroniseCustomers:」(換地方了結腸),但隨後得以通過在錯誤無效的對象,\ u0027:} \ u0027或\ u0027 \ u0027預期。 – Morgan 2010-10-29 03:27:39
昨天我看了那篇文章,並沒有得到它的工作,但我現在做了,謝謝。 – Morgan 2010-10-29 03:35:27