jQuery$.postjson用法实例
jquery.post(url,[data],[callback])
通过远程 http post 请求载入信息。 这是一个简单的 post 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax。 返回值
xmlhttprequest
参数
url(string) : 发送请求地址。
data(map) : (可选) 待发送 key/value 参数。
callback(function) : (可选) 发送成功时回调函数。
实例:利用$.post()计算两个数的和及乘(返回json)的结果。
index.html页面js代码片段:
//验证
if($("#txt_1").val()==''||$("#txt_2").val()=='')
{
alert('请输入要计算的值');
returnfalse;
}
//向add.ashx请求结果
$.post('enumerate/add.ashx',{
//参数一
num1:$('#txt_1').val(),
//参数二
num2:$("#txt_2").val()
},
//回调函数
function(theback)
{
//输出结果
$("#span_1").text(theback);
},
//返回类型
"text"
);
});
add.ashx页面代码(计算并返回结果):
usingsystem;
usingsystem.web;
publicclassadd:ihttphandler{
publicvoidprocessrequest(httpcontextcontext){
//返回类型
context.response.contenttype="text/html";
//接收参数
intinum1,inum2;
int.tryparse(context.request["num1"].tostring(),outinum1);
int.tryparse(context.request["num2"].tostring(),outinum2);
//计算并返回结果
context.response.write("结果:"+(inum1+inum2).tostring());
}
publicboolisreusable{
get{
returnfalse;
}
}
}
$.post()返回json方式用法:
//验证
if($("#txt_3").val()==''||$("#txt_4").val()=='')
{
alert('请输入要计算的值');
returnfalse;
}
//向multiply.ashx请求结果
$.post('enumerate/multiply.ashx',{
//参数一
num1:$('#txt_3').val(),
//参数二
num2:$("#txt_4").val()
},
//回调函数
function(theback)
{
//输出结果
$("#p_2").html('第一个数:'+theback.num1+'
'+'第二个数:'+theback.num2+'
'+'算法类型:'+theback.type+'
'+'计算结果:'+theback.result);
},
//返回类型
"json"
);
});
c#返回json方式代码(multiply.ashx页面):
intinum1,inum2;
int.tryparse(context.request["num1"].tostring(),outinum1);
int.tryparse(context.request["num2"].tostring(),outinum2);
context.response.write("{num1:'"+inum1.tostring()+"',num2:'"+inum2.tostring()+"',type:'enumerate',result:'"+(inum1*inum2).tostring()+"'}");