asp.net调用jqueryajax
2013-11-14 22:17
393 查看
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> <script> function Ajax1Data(data) { alert(data[0].Name); } $(function () { $("#btn_Ajax1").click(function () { $.ajax({ type: "Get",//默认,后台取参数:Request.Params[""] url: "btnAjaxGet.ashx",//此处名字后不能带数字,不然就调不到,奇怪 //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字 data: { "value1": '万事如意', "value2": $('#txtCs').val(), "value3": '牛牛牛GET' }, //contentType: "application/json; charset=utf-8",//加不加这个设置,都能用Request.Params[""]获取参数 dataType: "json", success: function (data) { t = "<table border='1'>"; $.each(data, function (i, item) { t += "<tr>"; t += "<td>" + item.ID + "</td>"; t += "<td>" + item.Name + "</td>"; t += "<td>" + item.Address + "</td>"; t += "</tr>"; }) t += "</table>"; $("#show").html(t); }, error: function (err) { alert(err); } }); //禁用按钮的提交 return false; }); $("#btn_Ajax2").click(function () { $.post("btnAjaxPostSimple.ashx", { "FunName": "参数", "Value": $('#txtCs').val() }, function (data) { debugger; data = jQuery.parseJSON(data);//将字符串转为json对象 t = "<table border='1'>"; $.each(data, function (i, item) { t += "<tr>"; t += "<td>" + item.ID + "</td>"; t += "<td>" + item.Name + "</td>"; t += "<td>" + item.Address + "</td>"; t += "</tr>"; }) t += "</table>"; $("#show").html(t); }); //禁用按钮的提交 return false; }); $("#btn_Ajax3").click(function () { $.ajax({ type: "Post", url: "Ajax.aspx/getValueByAjaxByParms", //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字 data: "{'str':'我是','str2':'" + $('#txtCs').val() + "','str3':'是不是?'}",//data后参数要带双引号 contentType: "application/json; charset=utf-8",//此处必须设置 dataType: "json", success: function (data) { //返回的数据用data.d获取内容 alert(data.d); data = jQuery.parseJSON(data.d);//将字符串转为json对象 t = "<table border='1'>"; $.each(data, function (i, item) { t += "<tr>"; t += "<td>" + item.ID + "</td>"; t += "<td>" + item.Name + "</td>"; t += "<td>" + item.Address + "</td>"; t += "</tr>"; }) t += "</table>"; $("#show").html(t); }, error: function (err) { alert(err); } }); return false; }); $("#btn_Ajax").click(function () { $.ajax({ type: "post", url: "AjaxHandler.ashx", data: { "value1": '万事如意', "value2": $('#txtCs').val(), "value3": '牛牛牛POST' }, //参数要对应 //contentType: "application/json; charset=utf-8",//此处不用设置,不然在post方式下后台无法取到值 dataType: "json", success: function (data) { t = "<table border='1'>"; $.each(data, function (i, item) { t += "<tr>"; t += "<td>" + item.ID + "</td>"; t += "<td>" + item.Name + "</td>"; t += "<td>" + item.Address + "</td>"; t += "</tr>"; }) t += "</table>"; $("#show").html(t); } }); return false; }); }) </script> </head> <body> <form id="form1" runat="server"> <div> <input id="txtCs" type="text" /> <input value="Post" type="button" id="btn_Ajax" /> <input value="Get" type="button" id="btn_Ajax1"/> <input value="$.post" type="button" id="btn_Ajax2" /> <input value="WebMoth" type="button" id="btn_Ajax3" /> </div> <div id="show"> </div> </form> </body> </html>
using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.Services; using System.Web.UI; using System.Web.UI.WebControls; namespace OpenCloseEvent { public partial class Ajax : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } //带参数 [WebMethod] public static string getValueByAjaxByParms(string str, string str2, string str3) { DataTable dt = new DataTable(); dt.TableName = "mytablename"; dt.Columns.Add("ID", typeof(Int32)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Address", typeof(string)); DataRow drNew = dt.NewRow(); drNew["ID"] = 0; drNew["Name"] = "传递参数"; drNew["Address"] = str + str2 + str3; dt.Rows.Add(drNew); for (int i = 0; i < 5; i++) { DataRow dr = dt.NewRow(); dr["ID"] = i.ToString(); dr["Name"] = "JSON" + i.ToString(); dr["Address"] = "中国-北京-海淀" + i.ToString() + "号"; dt.Rows.Add(dr); } string strss = JsonConvert.SerializeObject(dt); return strss; } [WebMethod] public static string GetData() { DataTable dt = new DataTable(); dt.TableName = "mytablename"; dt.Columns.Add("ID", typeof(Int32)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Address", typeof(string)); for (int i = 0; i < 5; i++) { DataRow dr = dt.NewRow(); dr["ID"] = i.ToString(); dr["Name"] = "JSON" + i.ToString(); dr["Address"] = "中国-北京-海淀" + i.ToString() + "号"; dt.Rows.Add(dr); } string strss = JsonConvert.SerializeObject(dt); return strss; } } }
/// <summary> /// AjaxHandler 的摘要说明 /// </summary> public class AjaxHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { string value1 = context.Request.Form["value1"] ?? ""; string value2 = context.Request.Form["value2"] ?? ""; string value3 = context.Request.Form["value3"] ?? ""; value1 = context.Request.Params["value1"] ?? ""; value2 = context.Request.Params["value2"] ?? ""; value3 = context.Request.Params["value3"] ?? ""; DataTable dt = new DataTable(); dt.TableName = "mytablename"; dt.Columns.Add("ID", typeof(Int32)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Address", typeof(string)); DataRow drNew = dt.NewRow(); drNew["ID"] = 0; drNew["Name"] = "传递参数"; drNew["Address"] = value1+value2+value3; dt.Rows.Add(drNew); for (int i = 1; i < 5; i++) { DataRow dr = dt.NewRow(); dr["ID"] = i.ToString(); dr["Name"] = "JSON" + i.ToString(); dr["Address"] = "中国-北京-海淀" + i.ToString() + "号"; dt.Rows.Add(dr); } string strss = JsonConvert.SerializeObject(dt); //strss = "[{\"demoData\":\"This Is The JSON Data\"}]"; context.Response.Charset = "UTF-8"; context.Response.ContentEncoding = System.Text.Encoding.UTF8; context.Response.Expires = 0; context.Response.Write(strss); context.Response.End(); } public bool IsReusable { get { return false; } } }
/// <summary> /// btnAjaxGet 的摘要说明 /// </summary> public class btnAjaxGet : IHttpHandler { public void ProcessRequest(HttpContext context) { string value1 = context.Request.Form["value1"] ?? ""; string value2 = context.Request.Form["value2"] ?? ""; string value3 = context.Request.Form["value3"] ?? ""; value1 = context.Request.Params["value1"] ?? ""; value2 = context.Request.Params["value2"] ?? ""; value3 = context.Request.Params["value3"] ?? ""; DataTable dt = new DataTable(); dt.TableName = "mytablename"; dt.Columns.Add("ID", typeof(Int32)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Address", typeof(string)); DataRow drNew = dt.NewRow(); drNew["ID"] = 0; drNew["Name"] = "传递参数"; drNew["Address"] = value1 + value2 + value3; dt.Rows.Add(drNew); for (int i = 1; i < 5; i++) { DataRow dr = dt.NewRow(); dr["ID"] = i.ToString(); dr["Name"] = "JSON" + i.ToString(); dr["Address"] = "中国-北京-海淀" + i.ToString() + "号"; dt.Rows.Add(dr); } string strss = JsonConvert.SerializeObject(dt); //strss = "[{\"demoData\":\"This Is The JSON Data\"}]"; context.Response.Charset = "UTF-8"; context.Response.ContentEncoding = System.Text.Encoding.UTF8; context.Response.Expires = 0; context.Response.Write(strss); context.Response.End(); } public bool IsReusable { get { return false; } } }
/// <summary> /// btnAjaxPostSimple 的摘要说明 /// </summary> public class btnAjaxPostSimple : IHttpHandler { public void ProcessRequest(HttpContext context) { string value1 = context.Request.Form["FunName"] ?? ""; string value2 = context.Request.Form["Value"] ?? ""; value1 = context.Request.Params["FunName"] ?? ""; value2 = context.Request.Params["Value"] ?? ""; DataTable dt = new DataTable(); dt.TableName = "mytablename"; dt.Columns.Add("ID", typeof(Int32)); dt.Columns.Add("Name", typeof(string)); dt.Columns.Add("Address", typeof(string)); DataRow drNew = dt.NewRow(); drNew["ID"] = 0; drNew["Name"] = value1; drNew["Address"] = value2; dt.Rows.Add(drNew); for (int i = 1; i < 5; i++) { DataRow dr = dt.NewRow(); dr["ID"] = i.ToString(); dr["Name"] = "JSON" + i.ToString(); dr["Address"] = "中国-北京-海淀" + i.ToString() + "号"; dt.Rows.Add(dr); } string strss = JsonConvert.SerializeObject(dt); //strss = "[{\"demoData\":\"This Is The JSON Data\"}]"; context.Response.Charset = "UTF-8"; context.Response.ContentEncoding = System.Text.Encoding.UTF8; context.Response.Expires = 0; context.Response.Write(strss); context.Response.End(); } public bool IsReusable { get { return false; } } }
相关文章推荐
- jQuery学习之prop和attr的区别
- Jquery mobile 新手问题总汇
- 第一次自己写jquery图片延迟加载插件,不通用,但修改一下还是可以使用到很多页面上的
- 简单的表单验证--js,jsp,jquery,java,mysql(前台和后台验证)(
- jQuery和Ajax
- jquery的each()使用
- 关于我在做一些项目时候帮助过我的一些资料库的链接
- [置顶] Jquery学习总结(二) jquery选择器详解
- jquery easyui datagrid使用,分页、排序、查询
- 项目中的一个JQuery ajax实现案例
- AJAX三级联动省市选择,使用jquery+html+XML
- AJAX三级联动省市选择,使用jquery+html+XML
- jqueryUI tab
- 自己写jquery.lazyloading图片延迟加载插件,通用
- jQuery.i18n.properties实现js国际化
- 项目中的一个JQuery ajax实现案例
- jquery ajax的简单用法记录
- Jquery学习总结(二) jquery选择器详解
- IE jquery修改img的src,不加载问题
- jquery横向滚动条