步骤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://www.51sjk.com/Upload/Articles/1/0/263/263788_20210708001603534.jpg")] [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的简单实例的全部内容了,希望对大家有所帮助,多多支持~