步驟1. 在web.config中的system.web節點裡加入
<!--此節點可允許腳本跨域調用webservice--> <webServices> <protocols> <add name="HttpPost"/> <add name="HttpGet"/> </protocols> </webServices> <!--此節點可允許腳本跨域調用webservice-->
步驟2. webservice代碼
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Services; using System.Web.Mvc; namespace WebService { /// <summary> /// WebService1 的摘要說明 /// </summary> [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允許使用 ASP.NET AJAX 從腳本中調用此 Web 服務,請取消對下行的注釋。 [System.Web.Script.Services.ScriptService] public class WebService1 : System.Web.Services.WebService { [ValidateInput(false)] [WebMethod(Description = "測試")] public void getDBTableInfos(string EnterpriseCode) { HttpContext.Current.Response.ContentType = "application/json;charset=utf-8"; string jsonCallBackFunName = string.Empty; jsonCallBackFunName = HttpContext.Current.Request.Params["jsoncallback"].ToString(); HttpContext.Current.Response.Write(jsonCallBackFunName + "({ \"Result\": \"" + EnterpriseCode + "\" })"); } } }
步驟3. html頁面部分
<!DOCTYPE html> <html> <head> <title>Index</title> <script src="http://www.cnblogs.com/Scripts/jquery-1.5.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#btnSubmit").click(function () { var EnterpriseCode = "39"; //企業代碼 var dataStr = "EnterpriseCode=" + EnterpriseCode; $.ajax({ type: "get", url: "http://xxx/xxx.asmx/AntiWebQuery_Ajax?jsoncallback?", dataType: "jsonp", jsonp: 'jsoncallback', data: dataStr, success: function (result) { //返回結果 alert(result.Result); } }); }); }); </script> </head> <body> <div> <input id="btnSubmit" type="button" value="查詢" /> </div> </body> </html>
以上就是小編為大家帶來的js跨域調用WebService的簡單實例的全部內容了,希望對大家有所幫助,多多支持~