当前位置: 首页 > 图文教程 > 网络编程 > Javascript > $.ajax json数据传递方法

Javascript
Web层改进II-用xmlhttp 无声息提交复杂表单
用ADODB.Stream转换
html读出文本文件内容
自适应高度框架 ----属个人收藏内容
Maps Javascript
JAVASCRIPT HashTable
一页面多XMLHttpRequest对象
网页javascript精华代码集
判断浏览器的js代码
JS判断浏览器之Navigator对象
用js自动判断浏览器分辨率的代码
用JavaScript和注册表脚本实现右键收藏Web页选中文本
判断页面是关闭还是刷新的js代码
WebGame《逆转裁判》完整版 代码下载(1月24日更新)
叠加计算出错的解决方法
一个轻量级的XHTML右键菜单[支持IE和firefox]
一些易混淆且不常用的属性,希望有用
网易首页的新闻代码
Flash对联广告的关闭按钮讨论
用JS获得表格当前行数的代码

Javascript 中的 $.ajax json数据传递方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 394 ::
收藏到网摘: n/a

$.ajax下json数据的传递方法,大家可以参考下。这样就可以传递json数据了 前台
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
<style type="text/css">
.show{ display:block;}
.hide{ display:none;}
</style>
<script type="text/javascript" src="jquery/jquery-1.2.6.js"></script>
<script type="text/javascript">
//这个方法把ajax方法封装一下,方便调用。
function myajax(){
//var obj=jsonData();
$.ajax({
type:'post',
url:'ajax.aspx',
data:jsonData(),//可以直接加一个函数名。
dataType:'json',
beforeSend:beforecall,
success:callback
});
}
//封装json数据,为了代码清晰
function jsonData(){
var jsonStr="({";
jsonStr+="\"name\":";
jsonStr+="\"tree\"";
jsonStr+=",";
jsonStr+="\"id\":";
jsonStr+="\"123\"";
jsonStr+="})";
return eval(jsonStr);//关键在于转换。
}
//调用前方法,不成功
function beforecall(){
$('#wait').addClass("show").append('调出中...');
//alert('');//测试是否调用
}
//回调函数
function callback(data){
$('#response').append(data.name+data.id);
$('#wait').css("display","none");
}
//onload()事件
$(function(){
$('#confirm').click(myajax);
})
</script>
</head>
<body>
<div id="confirm">点击</div>
<div id="response">接收后台数据</div>
<div id="wait" class="hide">hello</div>
</body>
</html>

后台
复制代码 代码如下:

protected void Page_Load(object sender, EventArgs e)
{
Hashtable ht = new Hashtable();
string name = Request.Params["name"].ToString();
string birth = Request.Params["birthday"].ToString();
if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(birth))
{
//Response.ContentType = "Application/json";
//Response.Write(CreareJson("this is ok!", 1, name, birth));
ht.Add("info", "成功了");
ht.Add("sta", "状态");
ht.Add("name", name);
ht.Add("birth", birth);
Response.Write(CreateJsonParams(ht));
}
Response.End();
}
private string CreateJsonParams(Hashtable items)
{
string returnStr = "";
foreach(DictionaryEntry item in items)
{
returnStr += "\"" + item.Key.ToString() + "\":\"" + item.Value.ToString() + "\",";
}
return "{" + returnStr.Substring(0,returnStr.Length-1) + "}";
}