首页 > 代码库 > jQuery调用WebService返回JSON数据

jQuery调用WebService返回JSON数据

相信大家都比较了解JSON格式的数据对于ajax的方便,不了解的可以从网上找一下这方面的资料来看一下,这里就不多说了,不清楚的可以在网上查一下,这里只说一下因为参数设置不当引起的取不到返回值的问题。

在用jQuery调用WebService的时候,它contentType默认为

以下是WebService服务端的代码:

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Web; 5 using System.Web.Services; 6 using System.IO; 7 using System.Web.Script.Serialization; 8 using System.Web.Script.Services; 9 10 namespace WebService11 {12     /// <summary>13     /// CallWebService 的摘要说明14     /// </summary>15     [WebService(Namespace = "http://www.qiandabao.com/")]16     [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]17     [System.ComponentModel.ToolboxItem(false)]18     // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。19     //[System.Web.Script.Services.ScriptService]20     public class CallWebService : System.Web.Services.WebService21     {22 23          [WebMethod]24         public string ws()25         {26             return "test";27         }28     }29 }

 

 

下面是客户端调用WebService时的代码:

 

 1 $.ajax({ 2     type: "POST", 3     //dataType: "json", 4     //contentType: "application/json; charset=utf-8", 5     url: "http://localhost:8007/CallWebService.asmx/ws", 6     data:"", 7     success: function (data) { 8         alert(data.d); 9     },10     error: function (data) {11         //alert(data.responseText);12     }13 });

上面这段js返回的是xml格式的数据:

<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://www.qiandabao.com/">test</string>

 

 如果不指定contentType,WebService返回的就是xml格式的数据,