javascript - 将行添加到表主体时出错

标签 javascript jquery html

这是我的代码。 我的问题与 for 循环内的追加函数有关。传递给函数的字符串未正确解析,并且我收到错误。我该如何纠正这个问题?

谢谢!

function getDetailPopUp(detailBy)
{
   $.getJSON('/index.cfm/reports/productivity/getDetailPopUp', {
    rollUpType:'byUser'

}, function(result){

for (i=1;i<=result.length;i++)
    {
        $('#detailTable > tbody:last').append('<tr><td>'+ result[i][0]+ '</td><td>'+                       
        result[i]][1]+ '</td><td>'+ result[i][2]+'</td><td>'+result[i][3]+ '</td>                    
         <td>'+result[i][4]+'</td><td>'+result[i][5]+'</td><td>'+result[i][6]+'
          </td><td>'+result[i][7]+'</td><td>'+result[i][8]+ '</td></tr>');
}   

$("#details").fadeIn();

});

}       




<div id="details" width=80%>

<table id="detailTable"  style="height:100px; overflow:scroll">

            <thead>
                <th>Calls</th>
                <th>Col2</th>
                <th>Col3</th>
                <th>Col4</th>
                <th>Col5</th>
                <th>Col6</th>
                <th>Col7</th>
                <th>Col8</th>
                <th>Col9</th>
            </thead>
            <tbody>         
            </tbody>      
</table>    
</div>

最佳答案

The string passed to the function isn't parsing correctly, and I am getting an error.

字符串内不能有换行符:

$('#detailTable > tbody:last').append('<tr><td>'+ result[i][0]+ '</td><td>'+                       
     result[i]][1]+ '</td><td>'+ result[i][2]+'</td><td>'+result[i][3]+ '</td>                    
-->  <td>'+result[i][4]+'</td><td>'+result[i][5]+'</td><td>'+result[i][6]+'
     </td><td>'+result[i][7]+'</td><td>'+result[i][8]+ '</td></tr>');

您有 result[i]][1],还有一个额外的 ]

这会起作用:

$('#detailTable > tbody:last').append(
    '<tr><td>'+ result[i][0]+ '</td><td>'+                       
    result[i][1]+ '</td><td>'+ result[i][2]+'</td><td>'+result[i][3]+ '</td>'+                   
    '<td>'+result[i][4]+'</td><td>'+result[i][5]+'</td><td>'+result[i][6]+
    '</td><td>'+result[i][7]+'</td><td>'+result[i][8]+ '</td></tr>'
);

尽管为了可读性,你最好这样做:

$('#detailTable > tbody:last').append(
    '<tr>' +
    '<td>' + result[i][0] + '</td>' +
    '<td>' + result[i][1] + '</td>' +
    '<td>' + result[i][2] + '</td>' +
    '<td>' + result[i][3] + '</td>' +
    '<td>' + result[i][4] + '</td>' +
    '<td>' + result[i][5] + '</td>' +
    '<td>' + result[i][6] + '</td>' +
    '<td>' + result[i][7] + '</td>' +
    '<td>' + result[i][8] + '</td>' +
    '</tr>'
);

关于javascript - 将行添加到表主体时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6319452/

相关文章:

javascript - openlayers map 中心问题

Javascript:是否可以读取外部脚本的原始代码?

javascript - 使用 AngularJS 将表单数据数组保存到先前的数组

jquery - 从 JSON 数据获取动态表的列标题

html - 我可以在代码中间放一个 Doctype 吗?

javascript - 带有带有两个参数的 onclick 函数的 HTML 输入字符串 - 不起作用

javascript - 在 Altair 绘图点击上运行 javascript

javascript - 使用 onclick 切换 2 个 slider

jquery - 使用像 Spinner 这样的 jquery 增加文本输入的值

html - 希望文本溢出到另一个 div