如何在ajax调用后访问各个php变量?我有两个变量从message.php $ id和$ messageid返回,我需要从ajax访问这些变量。
在我的php中我有:
if($array1){
$id = "1";
$messageid = $messageid;
}
AJAX:
$(document).ready(function(){
$('#newmessage').on('submit',function(e) {
$.ajax({
url:'message.php',
data:$(this).serialize(),
type:'POST',
dataType: 'HTML',
success:function(data){
if($.trim(data) == "1") { <-- this needs to be data.id
$("#message").modal("hide"); <-- this needs to be #message.data.messageid
}
else{
alert("error");
}
答案 0 :(得分:3)
试试这个,
在php中,您需要以json格式返回响应:
if ($array1) {
$id = "1";
$messageid = $messageid;
}
echo json_encode(array('id' => $id, 'messageid' => $messageid));
在Javascript中:您需要检索响应并按照自己的方式解析它。
您应该将dataType: 'HTML',
更改为dataType: 'json',
答案 1 :(得分:0)
在php中使用
$arr['id'] = "1";
$arr['messageid'] = $messageid;
echo json_encode($arr);
在js ajax中,使用dataType: 'json'
在js中成功,
使用data.id或data.messageid。
答案 2 :(得分:0)
除了json之外,另一种方法:
在你的php文件中:
echo $id."#".$messageid;
现在你的ajax成功函数:
$.ajax({
url:'message.php',
data:$(this).serialize(),
type:'POST',
dataType: 'HTML',
success:function(data){
var result=data.split('#');//for splitting id and message
//result[0] will contain id
// result[1] will contain msg
//use result accordingly
}
希望它有所帮助...