PHP和jQuery AJAX的多个返回值

ben*_*e89 27 php ajax jquery return-value

我正在使用这个jQuery代码:

$.ajax
({
    type: "POST",
    url: "customerfilter.php",
    data: dataString,
    cache: false,
    success: function(html)
    {
        $(".custName").html(html);
    }
});
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做:$(".projDesc").html(html1); 所以我可以将返回的结果分成两个html元素?

echo "<p>" .$row['cust_name']. "</p>";
Run Code Online (Sandbox Code Playgroud)

多数民众赞成我正在使用的PHP,我想回应另一个我可以放入另一个HTML元素的语句

这有意义吗?

Kle*_*vič 59

使用json_encode()关联数组从PHP转换成JSON和使用$.getJSON(),它会返回一个Javascript数组.

例:

<?php echo json_encode(array("a" => "valueA", "b" => "valueB")); ?>
Run Code Online (Sandbox Code Playgroud)

在Javascript中:

$.getJSON("myscript.php", function(data) {
  alert("Value for 'a': " + data.a + "\nValue for 'b': " + data.b);
});
Run Code Online (Sandbox Code Playgroud)

  • 您是在ajax发布成功功能中使用.getJson还是将其完全分开使用? (2认同)

Jak*_*e N 46

让你的响应返回JSON,你需要将你的jQuery更改为this,所以期望的dataType是json:

$.ajax
({
    type: "POST",
    url: "customerfilter.php",
    dataType: 'json',
    cache: false,
    success: function(data)
    {
        $(".custName").html(data.message1);
        $(".custName2").html(data.message2);
    }
});
Run Code Online (Sandbox Code Playgroud)

然后,您需要将响应编码为JSON数组:

 <?php echo json_encode(
      array("message1" => "Hi", 
      "message2" => "Something else")
 ) ?>
Run Code Online (Sandbox Code Playgroud)