[轉]通過ScriptManager在客戶端來調用服務器端方法或者webService的方法

1。客戶端調用服務器端方法:
源文件中的代碼
 1 <script language=javascript type="text/javascript">
 2    function GetCurrentTime()
 3    {
 4        PageMethods.GetCurrentTime('NewEgg ajax training',CheckIsSuccess);
 5    }
 6    function CheckIsSuccess(result)
 7    {
 8        alert(result);
 9    }
10    </script>
11
12    <input id="Button1" type="button" value="客戶端控件調用服務器端的方法" onclick="GetCurrentTime()" />服務器端的方法
1[WebMethod]
2        public static string GetCurrentTime(string str)
3        {
4            return str + DateTime.Now.ToLongTimeString();
5        }這樣就可以了,然後還一個地方要設置的就是ScriptManager有個屬性:EnablePageMethods="true"
2。客戶端調用WebService的方法:
源代碼:
 1 <asp:ScriptManager ID="ScriptManager1" runat="server">
 2            <Services>
 3                <asp:ServiceReference Path="AjaxTestWebService.asmx" InlineScript="true" />
 4            </Services>
 5        </asp:ScriptManager>
 6        <br />
 7        這個就是用客戶端的方法去調用WebService裏面的方法&nbsp;<div>
 8        <input id="Button1" type="button" value="點擊調用WebService裏邊的方法產生一個隨機數" onclick="getRandom()" />
 9
10        <script language="javascript" type="text/javascript">
11            function getRandom()
12            {
13                Ajax_Dear.AjaxTestWebService.GetRandom(getR);
14            }
15            function getR(result)
16            {
17                alert(result);
18            }
19        </script>WebService的方法
 1 [WebService(Namespace = "http://tempuri.org/")]
 2    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
 3    [ScriptService]
 4    public class AjaxTestWebService : System.Web.Services.WebService
 5    {
 6
 7        [WebMethod]
 8        public string HelloWorld()
 9        {
10            return "Hello World";
11        }
12        [WebMethod]
13        public int GetRandom()
14        {
15            return new Random(DateTime.Now.Millisecond).Next();
16        }
17    }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章