Ajax调用传递参数来起作用

时间:2011-02-07 21:05:00

标签: javascript jquery asp.net ajax wcf

这段代码有什么问题?我试图将参数传递给WCF函数。我无法让这个工作。我收到了Ajax错误。

  $.ajax({
    url: applicationPath + "/Test.svc/GetData",
    type: "POST",
    dataType: "json",
    data: '{GId":' + sender.get_value() + '"GName":' + sender.get_text() + '"mId":' + testId + '}',
    contentType: "application/json; charset=utf-8",
    success: function(result)
    {
        //trying to fill combobox here
    },
});

1 个答案:

答案 0 :(得分:0)

数据无效JSON。以下是代码及其结果的示例。

'{GId":' + sender.get_value() + '"GName":' + sender.get_text() + '"mId":' + testId + '}'
>> '{GId":'foo'"GName":'bar'"mId":5}'

我不是手动构建JSON,而是使用JSON.stringify并将其传递给对象。

JSON.stringify({GId: sender.get_value(), GName: sender.get_text(), mId: testid})
>> "{"GId":"df","GName":"sdf","mId":4}"

我认为你可以看到存在差异。您的代码在GId的开头缺少逗号和引号。