Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.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方法将json数据传递到DataTable时出错_Javascript_Jquery_Ajax_Json - Fatal编程技术网

Javascript 通过ajax方法将json数据传递到DataTable时出错

Javascript 通过ajax方法将json数据传递到DataTable时出错,javascript,jquery,ajax,json,Javascript,Jquery,Ajax,Json,我在Google Chrome控制台上的IDE中发现一个错误,它表明: Uncaught TypeError:无法读取未定义的属性“length”。当dataTables获取原始json数据并尝试将其注入表中时,会引发此错误 // Got the data - add it to the table for ( i=0 ; i<aData.length ; i++ ) { _fnAddData( settings, aData[i] ); } <script> $(doc

我在Google Chrome控制台上的IDE中发现一个错误,它表明:
Uncaught TypeError:无法读取未定义的属性“length”。
dataTables
获取原始json数据并尝试将其注入表中时,会引发此错误

 // Got the data - add it to the table
for ( i=0 ; i<aData.length ; i++ ) {
_fnAddData( settings, aData[i] );
}

<script> 
$(document).ready(function(){
    $('#clickMe').click(function(){

    $.ajaxPrefilter(function(options, originalOptions, jqHXR ){
        options.async = true;
    });

$.ajax({
    //type: 'GET',
    url: 'URL',
    dataType:"json",
    data: "getAddressResults", //name of json expression
    success: function(data){
    var jsTable = $('#data').dataTable();
    jsTable.fnClearTable();

    $.each(data, function(key, value){
        var i = this.length;
        alert("There are : " + i + " entries."); //shows how many objects are in my json data 

    jsTable.dataTable().fnAddData([
        value[key].childName,
        value[key].childNum,
        value[key].lineNum,
        value[key].parentName,
        value[key].parentNum
    ]);
});
        if(data){
            var txt = "";
            if(res > 0){
                for (var i=0;i<data.length;i++){
                if (data[i].parentNum && data[i].childNum){
                    txt += "<tr><td>"+data[i].parentNum+"</td><td>"+data[i].childNum+"</td></tr>"
                }
            }
            if(txt !=""){
                $("#data").append(txt).removeClass("hidden");
            }
        }
    }
},
error: function(jqXHR, textStatus, errorThrown){
        alert(textStatus + ': ' + errorThrown);
        }       
    });
        return false;
});


    $('#data').DataTable({
    columns:[
        { title: "childName" },
        { title: "childNum" },
        { title: "lineNum" },
        { title: "parentName" },
        { title: "parentNum" }
        ]
});

//已获取数据-将其添加到表中
对于(i=0;i=0){

对于(var i=0;i删除该
标记,您不能仅在javascript之间放置一个html标记。

//获取数据-将其添加到表中以供使用(i=0;我在哪里定义了
aData
aData?aData是jquery插件dataTables制作和定义的东西,这就是我的问题,我不确定从我的代码中到底提取了什么来定义aData。代码的顶部是dataTables输出的结果jquery,这是发生错误的部分。脚本标记是bec因为我在HTML页面上呈现javascript,所以它必须包含在标记中。我缺少什么吗?@user1735921这不是答案。它应该作为注释放置。