现在的位置: 首页 > 综合 > 正文

js跨域调用WebService

2012年08月03日 ⁄ 综合 ⁄ 共 1907字 ⁄ 字号 评论关闭

步骤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> 

抱歉!评论已关闭.