通过ajax,如果从后端直接想前端返回数组,那前端收到的是一个‘Array’的字符串。所以,我比较习惯的是用json对象的格式。
由后端通过json_encode()函数,把数组封装成对象,传递到前端;前端也以json的格式接收。
这里用提交表单来举例说明。
前端代码如下:
<form action="test_receive.php" method="post">
姓名:<input type="text" name="name" value="" />
年龄:<input type="text" name="age" value="" />
性别:<input type="radio" name="sex" value="man" />男<input type="radio" name="sex" value="woman" />女
<button type="button">提交</button>
</form>
<div id="message"></div>
<script type="text/javascript">
$(function(){
$("button").on("click",function(){
$.ajax({
url:'test_receive.php',
type:'post',
data:$("form").serialize(),
dataType:'json',
success:function(response){
$.each(response,function(key,value){
$("#message").append("<p>"+key+" -- "+value+"</p>");
});
}
});
});
});
</script>
后端代码:
<?php
$post = $_POST;
echo json_encode($post);
?>
轻~轻~松~松~