Calling simple web service (.asmx file) from AJAX and JQuery using JSON - parse error
尝试将所有这些技术结合在一起迈出了我的第一步......我有一些小事......
这是我的服务器端:
1 2 3 4 5 6 | [WebMethod(EnableSession = true)] [ScriptMethod(ResponseFormat = ResponseFormat.Json)] public string simplestMethod() { return"Simplest method returned"; } |
这是我的客户方:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | $(document).ready(function(){ $("a").click(function(event){ $.ajax({ type:"POST", url:"http://localhost:53346/d2/TAPI.asmx/simplestMethod", data:"{}", contentType:"application/json; charset=utf-8", dataType:"json", success: function (data) { alert(data.d); }, error: function (XMLHttpRequest, textStatus, errorThrown) { alert("Error Occured!" +" |" + XMLHttpRequest +" |" + textStatus +" |" + errorThrown ); } }); }); }); |
结果是一个警告说:
发生了错误!| [object XMLHttpRequest] | parseerror |未定义。
什么解析失败了,为什么?
我应该提一下,直接调用WS方法确实有效。
非常感谢!
您的代码在一个可疑位置看起来很好:
此外,如果您想研究如何使用参数调用Web方法或从Web方法返回更复杂的数据,请查看如何构建要发送到AJAX WebService的JSON对象? 和asmx web服务,json,javascript / jquery ?,如果ContentType不是JSON,我可以从.asmx Web服务返回JSON吗? 如何解决来自Web方法内部异常的错误消息,请参阅在ajax调用失败时在vb.net中获取xhr对象。
如果要在jquery中使用WebMethod,则必须将此标记添加到web.config
1 2 3 4 5 6 7 | <configuration> <system.web> <httpModules> </httpModules> </system.web> </configuration> |
祝好运