jQuery访问webservice 是出错
$.ajax({
type: "POST",
url: "User/GetData.asmx/HelloWorld",
data: '{"input":"123"}',
contentType: "application/json",
dataType: "json",
success: function (result) {
alert(result);
},
error: function (res) {
alert("有问题");
}
});
以上这样就不能访问到User/GetData.asmx/HelloWorld这里了。。
如果换成以下 的就可以.
$.ajax({
type: "POST",
url: "User/GetData.asmx/HelloWorld",
data: '{"input":"123"}',
dataType: "text",
success: function (result) {
alert(result);
},
error: function (res) {
alert("有问题");
}
});
那位老大帮忙看一下是什么问题,谢谢!!
[解决办法]
contentType: "application/json",
dataType: "json",
你的webservice不支持json,如果你用的是wcf(vs08,vs10),则webservice可以定义为json格式。
[解决办法]
参看dataType
http://jqapi.com/#p=jQuery.ajax
如果你设置为json,那么返回的数据要是标准的json数据类型,如果不是的话就会抱错。
[解决办法]
$.ajax({
type: "POST",
url: "User/GetData.asmx/HelloWorld",
data: {input:"123"}, <--- 当dataType指定是json时,这里需要传json对象
或者用Eval("")将json字符串转为json对象。
contentType: "application/json",
dataType: "json",
success: function (result) {
alert(result);
},
error: function (res) {
alert("有问题");
}
});
[解决办法]
将 data: '{"input":"123"}', 换成 data: {"input":"123"},