使用jQuery的ajax的post与get发送数据到指定url
内容有:
?
返回类型resultType有如下几种:
"xml", "html", "script", "json", "jsonp", "text"
?
?
用法2:(点击post数据返回数据)
<input type="button" id="bnajax" value="ajax" onclick="ajaxTest()" />
<script type="text/javascript" >
?function ajaxTest()
?{
? $.post("http://www.my400800.cn", { "searchKey": "400电话" },function(data)
? {
?? $("#my400800").html(data);
? }
? );
?}</script>
?
?
下面是摘自网络的函数:
post方法如下:
?
function test(access_url, tipE){ $.post(access_url,{ first: "test1", second: "test2" }, function(data){ if(data.success){ $('#' + tipE).html('处理成功'); }else{ $('#' + tipE).html(data.msg); } },'json' ) }??
如果想用get方法,则把post换为get就可以了,挺简单!这个函数中data值为服务端返回的值,且为JSON格式,当然了,这里可以用其他类型,如text,xml等等之类。
服务端返回值是JSON格式,如:{success:true, msg:"测试成功"}
?
?
?
AJAX乱码问题
产生乱码的原因:
1、xtmlhttp 返回的数据默认的字符编码是utf-8,如果客户端页面是gb2312或者其它编码数据就会产生乱码
2、post方法提交数据默认的字符编码是utf-8,如果服务器端是gb2312或其他编码数据就会产生乱码
解决办法有:
1、若客户端是gb2312编码,则在服务器指定输出流编码
2、服务器端和客户端都使用utf-8编码
gb2312:header('Content-Type:text/html;charset=GB2312');
utf8:header('Content-Type:text/html;charset=utf-8');
注意:如果你已经按上面的方法做了,还是返回乱码的话,检查你的方式是否为get,对于get请求(或凡涉及到url传递参数的),被传递的参数都要先经 encodeURIComponent方法处理.如果没有用encodeURIComponent处理的话,也会产生乱码.?