Ajax发送与返回数据格式注意的要点总结
ajax的数据格式有三种: 文本,json,和xml。
这三种格式是最为常见的,先说一下关于发送数据注意的要点:
发送数据有post和get之分,get虽然较快,但是不是很安全,post相对有优势,数据安全切能够发送一定量的数据。
至于发送的数据格式,其它的两种数据格式就不用多少,没有什么要注意的,这里主要说一下json数据格式,这也是最为重要的,
json的数据格式我们一般都知道,唯一注意的是键名和键值,如果说是变量的话就不用加上引号,因为这是一个对象,所以在最外面也不用加双引号。
服务器接收数据,然后发送给客服端,就是直接使用echo语句,这个里面可以有文本,json和xml,这里唯一和客户端发送的区别是json数据是变量的话
首要加上引号,而且,在接收到的同时,我们需要eval函数进行处理,然后才能用调用json数据。
下面是我的具体代码:
<script type="text/javascript"> $(document).ready(function(){ $("#test").click(function(){ /*普通get的方式*/ /*$("#div_1").load("test1process.php?test_data1=555&&test_data2=333",null,function(data,textStaus,XMLHttpRequest){ alert("服务器返回"+data); });*/ /*以post的方式*/ /*var url="test1process.php"; var send_data={'username':$("#username").val(),'password':$("#password").val()}; $("#div_1").load(url,send_data,function(data,textStaus,XMLHttpRequest){ alert("服务器返回"+data); });*/ /*json格式返回数据*/ /*var url="test1process.php"; var send_data={'username':$("#username").val(),'password':$("#password").val()}; $("#div_1").load(url,send_data,function(data,textStaus,XMLHttpRequest){ var json_data=eval("("+data+")"); alert("用户名是"+json_data.username+" "+"密码是"+json_data.password); }); */ //*xml格式接收*/ var url="test1process.php"; var send_data={'username':$("#username").val(),'password':$("#password").val()}; $("#div_1").load(url,send_data,function(data,textStaus,XMLHttpRequest){ var myxmldata=XMLHttpRequest.responseXML; /*var res=myxmldata.getElementsByTagName('username'); /*alert(res[0].childNodes[0].nodeValue);*/ alert(typeof myxmldata); }); }); }); </script>服务器端代码:
<?php //header("Content-Type: text/html; charset=utf-8"); header("Content-Type: text/xml; charset=utf-8"); header("Cache-Control: no-cache"); /* $test_data1=$_POST['test_data1']; $test_data2=$_POST['test_data2']; echo $test_data1; echo $test_data2; */ /* $username=$_POST['username']; $password=$_POST['password']; echo $username; echo $password; */ /**以json格式返回数据*/ /* $username=$_POST['username']; $password=$_POST['password']; echo "{'username':'$username','password':'$password'}"; */ $username=$_POST['username']; $password=$_POST['password']; echo "<info><username>1111</username><password>222222</password></info>";
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。