简体   繁体   中英

repeating when send data from multi-dimensional JSON to html table

 const Arri = JSON.parse(data);
            var pname;
            for (var i = 0; i < Arri.length; i++) {

                 pname = " " ; // null tried
                var propinfo = Arri[i].propinfo;
                for (var j = 0; j < propinfo.length; j++) {
                   pname = pname +propinfo[j].propertyname +"  |  ";
                }
                $('#tblbody').append('<tr><td scope="row">'+Arri[i].propertyid+'</td><td>'+pname+'</td></tr>"');
            }

when I run this code I have the following output.

pro1 | pro2 | Pro3

pro1 | pro2 | Pro3 pro4 | pro5 | Pro6

pro1 | pro2 | Pro3 pro4 | pro5 | Pro6 pro7 | pro8 | Pro9

pro1 | pro2 | Pro3 pro4 | pro5 | Pro6 pro7 | pro8 | Pro9 pro10 | pro11 | Pro12

I want to be like it:

pro1 | pro2 | Pro3

pro4 | pro5 | Pro6

pro7 | pro8 | Pro9

pro10 | pro11 | Pro12

Have you try NULL instead of double quoutation,

 const Arri = JSON.parse(data);
        var pname;
        for (var i = 0; i < Arri.length; i++) {

             pname = NULL;
            var propinfo = Arri[i].propinfo;
            for (var j = 0; j < propinfo.length; j++) {
               pname = pname +propinfo[j].propertyname +"  |  ";
            }
            $('#tblbody').append('<tr><td scope="row">'+Arri[i].propertyid+'</td><td>'+pname+'</td></tr>"');
        }

lets try local variables. try this:

        const Arri = JSON.parse(data);

        for (let i = 0; i < Arri.length; i++) {

            let pname = "" ; // null tried
            let propinfo = Arri[i].propinfo;
            for (let j = 0; j < propinfo.length; j++) {
               pname = pname +propinfo[j].propertyname +"  |  ";
            }
            $('#tblbody').append('<tr><td scope="row">'+Arri[i].propertyid+'</td><td>'+pname+'</td></tr>"');
        }

这段代码没有任何问题,我确定你的json有问题,你能分享你的json数据吗?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM