Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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
无法使用json对象显示带有Javascript的动态表_Javascript_Jquery_Arrays_Json - Fatal编程技术网

无法使用json对象显示带有Javascript的动态表

无法使用json对象显示带有Javascript的动态表,javascript,jquery,arrays,json,Javascript,Jquery,Arrays,Json,我必须检索Json中的数据,然后将其显示在表中。我试过几种方法,但都不管用。这是我这个函数的代码,有人能帮我找出这个代码的错误吗,因为我没有得到任何显示,也没有错误。多谢各位 代码已更新 显示菜单 请求数据 函数loadDoc(){ var xhttp=newXMLHttpRequest(); xhttp.onreadystatechange=函数(){ if(this.readyState==4&&this.status==200){ var obj=JSON.parse(this.re

我必须检索Json中的数据,然后将其显示在表中。我试过几种方法,但都不管用。这是我这个函数的代码,有人能帮我找出这个代码的错误吗,因为我没有得到任何显示,也没有错误。多谢各位

代码已更新


显示菜单
请求数据

函数loadDoc(){ var xhttp=newXMLHttpRequest(); xhttp.onreadystatechange=函数(){ if(this.readyState==4&&this.status==200){ var obj=JSON.parse(this.responseText); var html=“”; 对于(变量i=0;i
当您执行$('div').html()时。。。。页面中不存在div元素,因此在执行$('div').html()时不会呈现任何内容。。。。div元素在页面中不存在,因此不会呈现任何内容

这是正确的答案。正如kim82回答我的,div元素在页面中不存在。我刚刚加了


显示菜单
请求数据

函数loadDoc(){ var xhttp=newXMLHttpRequest(); xhttp.onreadystatechange=函数(){ if(this.readyState==4&&this.status==200){ //document.getElementById(“demo”).innerHTML=this.responseText; var obj=JSON.parse(this.responseText); //document.getElementById(“demo”).innerHTML=obj.response[0]。id+“”+obj.response[0]。餐厅id+“”+obj.response[0]。名称; //document.getElementById(“demo”).innerHTML=obj.response.length var html=“”; //document.getElementById(“demo”).innerHTML=obj.response[count]。id+“”+obj.response[count]。餐厅id+“”+obj.response[count]。名称; 对于(变量i=0;i
这是正确的答案。正如kim82回答我的,div元素在页面中不存在。我刚刚加了


显示菜单
请求数据

函数loadDoc(){ var xhttp=newXMLHttpRequest(); xhttp.onreadystatechange=函数(){ if(this.readyState==4&&this.status==200){ //document.getElementById(“demo”).innerHTML=this.responseText; var obj=JSON.parse(this.responseText); //document.getElementById(“demo”).innerHTML=obj.response[0]。id+“”+obj.response[0]。餐厅id+“”+obj.response[0]。名称; //document.getElementById(“demo”).innerHTML=obj.response.length var html=“”; //document.getElementById(“demo”).innerHTML=obj.response[count]。id+“”+obj.response[count]。餐厅id+“”+obj.response[count]。名称; 对于(变量i=0;i
请原谅我的误解,我没有复制链接


我注意到您的代码中有几点:

  • 您的数据被清楚地传递到
    p
    ,因为它是在AJAX回调中分配的
  • 您使用了
    For in
    循环,而不是
    For
    和迭代器,尽管您实际上是在对象数组上进行迭代
  • 页面上没有
    $('div')
    html
    变量放入任何内容
以下是对脚本的更新,应该可以正常工作:

function myFunction() {

    function myOtherFunction(data) {
        for (var i = 0; i < data.length; i++) {

            var html = null;

            html += '<tr>';
            html += '<td>' + data[i].id + '</td>';
            html += '<td>' + data[i].restuarant + '</td>';
            html += '<td>' + data[i].name + '</td>';
            html += '</tr>';

            $('#demo').html(html);

        }
    } 



    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            myOtherFunction(JSON.parse(this.responseText));
        }
    }

    xhttp.open("GET", "the URL I deleted it when posting", true);
    xhttp.send();

}

如果我误解了,请原谅,我没有复制链接


我注意到您的代码中有几点:

  • 您的数据被清楚地传递到
    p
    ,因为它是在AJAX回调中分配的
  • 您使用了
    For in
    循环,而不是
    For
    和迭代器,尽管您实际上是在对象数组上进行迭代
  • 页面上没有
    $('div')
    html
    变量放入任何内容
以下是对脚本的更新,应该可以正常工作:

function myFunction() {

    function myOtherFunction(data) {
        for (var i = 0; i < data.length; i++) {

            var html = null;

            html += '<tr>';
            html += '<td>' + data[i].id + '</td>';
            html += '<td>' + data[i].restuarant + '</td>';
            html += '<td>' + data[i].name + '</td>';
            html += '</tr>';

            $('#demo').html(html);

        }
    } 



    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            myOtherFunction(JSON.parse(this.responseText));
        }
    }

    xhttp.open("GET", "the URL I deleted it when posting", true);
    xhttp.send();

}

我无法推断你在问什么。你没有从你的链接中得到满意的回复?您删除了我们要复制的链接。谢谢。对不起,我不能显示链接。我需要在表格中显示输出。但我得到的是所有的对象。你想把表行放在段落元素中吗?我无法推断你在问什么。你没有从你的链接中得到满意的回复?您删除了我们要复制的链接。谢谢。对不起,我不能显示链接。我需要在表格中显示输出。但我得到的是所有的对象。你想把表行放在段落元素中?天哪,这太愚蠢了。非常感谢你!!如果有人需要,我会添加正确的代码。哦,天哪,这太愚蠢了。非常感谢你!!如果有人需要,我会添加正确的代码。