在客户端(js)调用服务器端方法(C#)

 资源地址:http://hi.baidu.com/%BF%D7%B7%B1%E1%AA/blog/item/11712f11fd221dc1a6ef3fe6.html

 

 

在ASP.net 中,客户端(client side)调用服务器端(server side)方法,一般是使用客户端代码调用web服务进行,这样的情况下,我们需要建立一个新的web服务(asmx)来执行这项过程,如果工程量不大的话,并且web服务跟web应用程序是同在一台服务器上的话,我们完全可以将原来web服务的方法,变成页(page method)方法,再从客户端进行调用。注意,这个过程实际上还是将原来页面的方法转换成web服务加以调用。

1、编写服务器端方法,

    [System.Web.Services.WebMethod]
    public static string GetHelloWorld()
    {
        return "Hello world" + DateTime.Now.ToString();
    }

   注意:首先,方法必须是静态方法,其次,必须添加元数据,设置该方法是web方法

2、客户端调用js代码,

<script type="text/javascript">
    function GetHelloWorld(){
        des = "tb";
        PageMethods
.GetHelloWorld(succeed,fail,des);
    }
    function succeed(result,des){
        $get(des).value = result;
    }
    function fail(result,des){
        alert("不能取得数据");
    }
</script>

注意:客户端调用,需要使用PageMethods引用当前页面中所有可用的web方法,调用时,签名如下:

PageMethods.方法([方法参数],成功时的回调函数,失败时的回调函数,上下文引用或其它需要引出到回调函数的参数);

回调函数的签名:

function 函数名(回传数据,上下文引用或引入到回调函数的参数)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值