$.ajax({
type: "POST",
url: "路径/xxxx.ashx",
async: false,
data: {
//由于你需要传递很多数据到后台,这里我才用了序列化表单的方式;你也可以自定义一个js类,然后把数据填充,然后转换成json格式的字符串,传递到后台。
data: $("form").serialize()
},
complete: function (XHR, status) {
XHR = null
},
success: function (data) {
data = $.parseJSON(data)
if (data.success == true) {
alert("成功")
}
else{
alert("失败")
}
},
error: function (XHR) {
alert(XHR)
}
})
然后你需要创建一个“一般处理程序”,里面的代码大致如下:
public void ProcessRequest(HttpContext context){
context.Response.ContentType = "text/plain"
//result中就是传递过来的所有数据
string result = context.Request.Form
//数据库 *** 作
context.Response.Write("{success:true}")
}
大致就是如此了。一个ajax请求并没有多么复杂。
var ajaxurl = path + "\/json/a.json"url:ajaxurl,
他这里是把json格式的数据保存在一个页面了,实际应用中你不需要这种的,就是传个url+参数,去后台读取数据库,然后返回一个数组,前台显示。 不要照搬别人的方法,$.post
$.ajax这里的方法你百度一下,看看使用方法就能看懂
1.获取DataSet2.转成DataTable
3.
public static string DataTableToJson(DataTable dt)
{
StringBuilder jsonBuilder = new StringBuilder()
//jsonBuilder.Append("'
//jsonBuilder.Append(dt.TableName)
jsonBuilder.Append("[")
for (int i = 0i <dt.Rows.Counti++)
{
jsonBuilder.Append("{")
for (int j = 0j <dt.Columns.Countj++)
{
jsonBuilder.Append("\"")
jsonBuilder.Append(dt.Columns[j].ColumnName)
jsonBuilder.Append("\":\"")
jsonBuilder.Append(dt.Rows[i][j].ToString())
jsonBuilder.Append("\",")
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1)
jsonBuilder.Append("},")
}
jsonBuilder.Remove(jsonBuilder.Length - 1, 1)
jsonBuilder.Append("]")
//jsonBuilder.Append("}") //输出的要求不要'}'
return jsonBuilder.ToString()
}
4.把Json字串Response出来
5.获取Json字串
function load() //页面加载
{
$.ajax({
type:"post",
url:"../Handler/LinkManHandler.ashx",//从哪获取Json
data:"action=getLinkMan&id="+comId,//Ajax传递的参数
beforeSend:function(){
//获取之前显示 loading 或 正在加载
},
success:function(mess)
{
$("#divImage").hide()
if(mess!="]")// 如果获取的数据不为空
{
var type=eval(mess)
var str="<a>首页</a>"
for(var i=0i<type.lengthi++)
{
// *** 作type 获取东西
str+="<a>"+type[i].数据库字段名+"</a>
}
$("#divLinkMan").html(str)//把str嵌入div divLinkMan 中
}
else
{
var notfind="<h2>未找到数据<a href='../Main.htm' target='_parent'>返回</a></h2>"
$("#divLinkMan").html(notfind)
}
},
complete:function()
{
//所有的都执行完后的方法
}
})
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)