Asp.net中用Jquery实现Ajax回调后台方法
要调用JQuery封装好的Ajax回调方式,那么肯定要将JQuery的原文件引入到工程里,具体的JQuery源码可以到官网中下载:http://jquery.com/
首先在前台添加一个button:
<div> <input type="button" id="mybutton" value="say hello" onclick="AjaxSayHello()" /> </div>
然后用JQuery实现button的onclick事件:
function AjaxSayHello() { var firstName = "Eric"; var lastName = "Sun"; var paramObj = new Object(); paramObj.firstName = firstName; paramObj.lastName = lastName; var paramStr = JSON.stringify(paramObj); $.ajax({ type: "Post", url: "ExportMyData.aspx/SayHello", data: paramStr, contentType: "application/json; charset=utf-8", dataType: "json", success: function (result) { alert(result.d); //get the data of the result }, error: function (result) { alert(result.statusText); } });
这里用JSON的格式传递参数, var paramStr = JSON.stringify(paramObj); 这句话时间对象转化为JSON字符串。从paramObj对象中可以看出,我们要传递两个参数分别是 firstName 和 lastName ;实际传递的值为 Eric 和 Sun。 因此后台被调用的方法要有此两个参数 firstName 和 lastName 。
后台方法如下所示:
[WebMethod] public static string SayHello(string firstName, string lastName) { string sayStr = "Hello " + firstName + " " + lastName; return sayStr; }
这里要求添加[WebMethod]标签(注:要用到下面的命名空间),并且将此方法设置成 public static 。。。。
需要额外添加命名空间:
using System.Web.Services;
更多知识点。。。。。。
请看这篇文章 http://www.cnblogs.com/fish-li/archive/2013/01/13/2858599.html