JS调用候台方法

以前没发现。。  这种也是一种轻量级的了。

  function dd()
     { 

//这里调用候台方法

//参数在前。方法在候。
       PageMethods.EchoString("aaaaa",cc)
     }

//这个是完成时要调用的方法
       function cc(result)
     {
      alert(result)
     }

// html代码

  <input id="buttonGo" type="button" value="GO" onclick="return dd()" />

[System.Web.Services.WebMethod]
public string EchoString(string s)
{
    
return "Hello : " + s;
}

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" />

 

可以看到,在Page Method中,我们获取到了运行在服务端的TextBox的值。如果是在WebServer Method中,就不能再这样来实现了,这一点我想就是Page Method最大的价值吧。同时对于WebService Method和Page Method的工作原理也有很大的区别,看看Dflying Chen的解释:

对于Atlas调用Web Service来说,当请求被发送时候,仅仅简单传给服务器方法的参数数据。而对于Atlas调用Page Method来说,传输的数据将会很多,将把表单中所有的域,包括ViewState,一起传送到服务器。在服务器端,它的工作方式也和普通的PostBack很相似:在这个Page Method被调用前,所有的服务器控件将得到它自身的状态。这也正是为什么Page Method中可以访问页面中控件状态的原因在实际使用中,我们也是尽可能多的使用WebService Method,只在必要的时候才使用Page Method。

 

你可能感兴趣的:(js)