javascript - 仅限 html 的 AppendChild

标签 javascript jquery

我想将 Html 作为子元素附加到元素中,我尝试过:

$.each(data, function(i, field){
    var tbody = document.getElementsByTagName('tbody')[0];
    tbody.appendChild('<tr><td>'+ field.name +'</td><td>' + field.vorname + '</td><td>' + field.geburtsdatum + '</td><td>' + field.strasse + '</td><td>' + field.plz + '</td></tr>');
});

但不知怎的,我得到了这个错误:

 Uncaught NotFoundError: Failed to execute 'appendChild' on 'Node': The new child element is null. 

我该如何解决这个问题?谢谢

最佳答案

appendChild() 将节点作为参数,尝试 jQuery 的append() 代替

var $tbody = $('tbody').eq(0);
$.each(data, function (i, field) {
    $tbody.append('<tr><td>' + field.name + '</td><td>' + field.vorname + '</td><td>' + field.geburtsdatum + '</td><td>' + field.strasse + '</td><td>' + field.plz + '</td></tr>');
});
<小时/>

正如Json所说,最好先创建html然后附加它,所以尝试一下

var array = $.map(data, function (field, i) {
    return '<tr><td>' + field.name + '</td><td>' + field.vorname + '</td><td>' + field.geburtsdatum + '</td><td>' + field.strasse + '</td><td>' + field.plz + '</td></tr>';
});

$('tbody').eq(0).append(array.join(''));

关于javascript - 仅限 html 的 AppendChild,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21616870/

相关文章:

jQuery 表单验证不起作用

jquery - 如何让 jQuery UI 选项卡直接加载 URL/页面?

javascript - 将 jQuery 包装集写入 JSON 文件

javascript - 为什么警报会重定向我的页面?

javascript - 使用 Javascript,我怎样才能检测到按键事件,而不是当用户在表单字段中输入时?

javascript - 与 Mocha watch 一起使用时,Sinon stub 有奇怪的行为

javascript - jquery:立即停止功能

jquery - 从 bxSlider 中删除寻呼机

javascript - 是否可以使用 $http.post 发布数组?

javascript - 当您单击“后退”并且过滤器仍然有效时,如何保持复选框处于选中状态