jquery ajax web方法有效,但无法使用数据

时间:2012-02-02 16:32:19

标签: jquery json web-services

我的网络服务调用将其返回到data1

"{"d":"PCIS Follow Add ID and Codes when printed"}"

我了解到在使用asp.net的jquery时我必须使用data1.d

然而,当我尝试做警报(data.d);

即使data.d值显示为

,我也会返回未定义的内容
"{"d":"PCIS Follow Add ID and Codes when printed"}"

关于如何使用此信息的任何想法

Web服务应该返回一个字符串

 $.ajax({
                type: "POST",
                url: "Services/WorkService.asmx/WorkDescription",
                data: "{'workUnitId' : '" + $("option:selected", $(dropdown)).text() + "','id': '" + combobox.val() + "'}",
                contentType: "application/json; charset=utf-8",
                dataType:"json",
                success: function(data1) {
                var jsObject = JSON.parse(data1.d);
            alert(jsObject);                   
 combobox.attr("_tooltip", data1.d);    
                }    
            });
        },

2 个答案:

答案 0 :(得分:4)

您应将json设为dataType

 dataType:"json",

因为如果指定text jQuery不会解析响应(如果在响应中指定json jQuery调用$.parseJSON()

在这个问题Why is 'jQuery.parseJSON' not necessary?

中查看我的答案

编辑你的服务器应该返回

{"d":"PCIS Follow Add ID and Codes when printed"}

没有开始和结尾"

答案 1 :(得分:0)

试试这个:

<script>
var jsObject = JSON.parse('{"hello":"world"}');
alert(jsObject.hello);
</script>