簡體   English   中英

如何在JS中使用ajax請求的結果?

[英]How to use the result of an ajax request in JS?

我有一個返回2行的查詢。 這是我的PHP代碼:

$arr = array();

$stmt = $dbh_conn->prepare("SELECT id,name FROM mytable WHERE id <= 2");
$stmt->execute();
$result = $stmt->fetchAll();
/*Array
  (
      [0] => Array
          (
              [id] => 1
              [name] => pear
          )

      [1] => Array
          (
              [id] => 2
              [name] => watermelon
          )

  ) */

$arr["output"] = $result;

header('Content-Type: application/json');   
echo json_encode($arr);
exit(); 

這是我的JS代碼:

success: function(arr) {
    $(".myclass").html(arr.output.0.name);
}

它拋出這個:

參數列表后面的Uncaught SyntaxError:missing)

當我刪除.0.name ,它拋出這個:

未捕獲的TypeError:無法在'Node'上執行'appendChild':參數1不是'Node'類型。

無論如何,當選擇多行時,如何顯示ajax請求的結果?

我想要的是一個結果的HTML表,如下所示:

<tr>
    <td>1</td>
    <td>pear</td>
</tr>
<tr>
    <td>2</td>
    <td>watermelon</td>
</tr>

然后將其推入$('.myclass')元素。

使用JSON.parse將字符串( data )解析回數組。

success: function(data) {
    var arr = JSON.parse(data);
    $(".myclass").text(arr.output[0].name);
}

並使用數組的下標。 如果你想設置.myclass中提到的.myclass的文本,請使用.text而不是.html

如果您的數據以json的形式返回,則需要訪問對象數組,進行更改

$(".myclass").html(arr.output.0.name);

$(".myclass").text(arr.output[0].name);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM