Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从AJAX jquery函数访问多维关联json数组_Javascript_Php_Jquery_Arrays_Ajax - Fatal编程技术网

Javascript 如何从AJAX jquery函数访问多维关联json数组

Javascript 如何从AJAX jquery函数访问多维关联json数组,javascript,php,jquery,arrays,ajax,Javascript,Php,Jquery,Arrays,Ajax,对于jQueryAjax函数,我必须从PHP页面返回多维关联数组 这是我的PHP页面,名为“seachsongs.PHP” <?php $brano = $_POST['brano']; $sql = "SELECT Titolo, Autore FROM Brani WHERE Titolo = '$brano';"; $ris = $conn->query($sql); while ($row = $ris->fetch_array

对于jQueryAjax函数,我必须从PHP页面返回多维关联数组

这是我的PHP页面,名为“seachsongs.PHP”

     <?php
$brano = $_POST['brano'];

    $sql = "SELECT Titolo, Autore FROM Brani WHERE Titolo = '$brano';";

    $ris = $conn->query($sql);


    while ($row = $ris->fetch_array()) {

        $arr[] = $row;
    }

    echo json_encode(array('data' => $arr));

    ?>
如何从jQuery访问数组数据?正确的说法是什么

alert(data)
打印这个

{"data":[{"0":"Animals","Titolo":"Animals","1":"Martin Garrix","Autore":"Martin Garrix"},{"0":"Animals","Titolo":"Animals","1":"Maron V","Autore":"Maron V"}]}{"data":[{"0":"Animals","Titolo":"Animals","1":"Martin Garrix","Autore":"Martin Garrix"},{"0":"Animals","Titolo":"Animals","1":"Maron V","Autore":"Maron V"}]}

PS:对不起,我的英语不好。

我已经将此请求的数据类型设置为
json
,因此返回的响应应该是
json
对象。您可以通过以下方式访问它:

$(document).ready(function () {
    $('#nBrano').keyup(function () {
        nomeBrano = $(this).val();
        $.ajax({
            type: "POST",
            data: {brano: nomeBrano},
            url: "searchsong.php",
            dataType:'json',
            success: function (response) {
                for(var i=0; i<response['data'].length; i++){
                    console.log(response['data'][i][/*your_target_index*/]);
                }
            },
            error: function () {
                //alert('errore');
            }
        });
    });
});
$(文档).ready(函数(){
$('#nBrano').keyup(函数(){
nomeBrano=$(this.val();
$.ajax({
类型:“POST”,
数据:{brano:nomeBrano},
url:“searchsong.php”,
数据类型:'json',
成功:功能(响应){

对于(var i=0;i)在获得
数据后,您想对其做什么?这是pdo中的fetchAll吗?您可以将
数据类型:“json”
添加到Ajax调用中,然后jQuery将为您转换它。由于Ajax正确解释了返回的内容,因此您可以自然地解析json(无需在这里对@supercolhandomegelboy进行字符串化)。但我会按照Magnus所说的添加
数据类型
。使用
console.log()
而不是
document.write()
,您可以使用
$('element').HTML('json位')将返回的数据放入HTML元素中
@imudin07我必须使用
数据
来创建一个表。@supercolhandomegelboy在
JSON之后。stringify(你的对象)
我如何像数组一样访问?你应该包括你更改了什么以及他为什么要使用它。不仅仅是发布一堆代码…顺便说一句,
文档。写入(数据)
将不再那么漂亮了,因为
data
现在是一个json对象。
$(document).ready(function () {
    $('#nBrano').keyup(function () {
        nomeBrano = $(this).val();
        $.ajax({
            type: "POST",
            data: {brano: nomeBrano},
            url: "searchsong.php",
            dataType:'json',
            success: function (response) {
                for(var i=0; i<response['data'].length; i++){
                    console.log(response['data'][i][/*your_target_index*/]);
                }
            },
            error: function () {
                //alert('errore');
            }
        });
    });
});