-1

我有一个 JQuery,它创建一个对 PHP 脚本的 Ajax 调用。我的 PHP 脚本回显 2 个字符串:check_1 和 check_2。alert() 在输出中显示两个字符串。如何在输出中只获取一个字符串?

PHP:

 <?php
 echo "check_1";
 echo "check_2";
 ?>

JQuery:

$.get("check_ajax.php", function(data) {
alert(data);
});

4

5 回答 5

1

将服务器响应作为 json 发送......并得到它......

尝试这个

jQuery

$.get("check_ajax.php", function(data) {
  alert(data.check_1); //alert the first object "check_1"
  alert(data.check_2);  //alert the second object "check_2"
},'JSON'); 

php

<?php
  echo json_encode(array("check_1"=>"check_1","check_2"=>"check_2"));
?>
于 2013-07-29T06:31:26.057 回答
1

有几种方法可以做到这一点。一种方法是字符串操作并删除第一个字符串的换行符之后的文本。另一种方法实际上是使用json. 因此,在您的 php 文件中,您将创建一个像数组一样的数据结构。

<?php
   $string = array("check_1", "check_2");
   echo json_encode($string);
?>

在 javascript 方面,您可以从该 json 数组中检索第一个元素。

$.get("check_ajax.php", function(data) {
alert(data[0]);
});
于 2013-07-29T06:32:38.747 回答
1

你可以这样使用:-

 <?php
 $html =  "check_1";
 $html1 = "check_2";
 echo $html.'~~~'.$html1;
 ?>

查询:

$.get("check_ajax.php", function(data) {
var res =  data.split('~~~');
alert(res[0]);
});
于 2013-07-29T06:33:50.940 回答
0

PHP:

<?php
    $text = array("check_1", "check_2");
    die(json_encode($text));
?>

jQuery:

$.get("check_ajax.php", function(data) {
    var response = JSON.parse(data);
    alert(response[0]); // for "check_1"
    alert(response[1]); // for "check_2"
});
于 2013-07-29T06:37:36.807 回答
0

我们之前也有同样的问题,但我作为替代解决方案所做的是有一个条件语句来分隔 php 返回的多个值

if(your condition here) { 
   echo "check_ 1";
} else { 
  echo "check_ 1";
}

希望能帮助到你 :)

于 2013-07-29T06:32:57.643 回答