数据表中的fnAddData()添加到同一行,而不是添加到新行
fnAddData() in datatable adds to same row instead of adding to new rows
我有一个xml字符串,需要根据该xml数据在数据表中显示。。
var xml = "<Users><user><username>user</username><password>password</password></user><user><username>user1</username><password>password1</password></user><user><username>user2</username><password>password2</password></user></users>"; //this is a sample, but in reality I'm getting the xml string from server
xmlDoc = $.parseXML(xml); //parsing xml to valid xml document
var $events = $(xmlDoc).find("Users");
var thisTable;
thisTable = $("#user-data").dataTable( //user-data is the id of my table
{
"sPaginationType": "full_numbers",
"bJQueryUI": true
}
);
$events.each(function(index, event){
console.log('test');
var $event = $(event),
addData = [];
addData.push( $event.children("loan").children("user").children("username").text());
addData.push($event.children("user").children("password").text());
thisTable.fnAddData(addData);
});
这是基于的演示
http://jsfiddle.net/jqbv2/
但我遇到了一个非常奇怪的问题,在我的控制台中,"测试"只打印一次,所以每个测试只迭代一次。同样在我的表中,所有用户名都显示在第一行的用户名字段中,所有密码都显示在第一行的密码字段中。也就是说,我在相对时间中使用的数据完全不同,这只是一个例子。这是表格
<table class="table table-striped table-bordered table-hover" id="loan-data">
<thead>
<tr>
<th>Username</th>
<th>Password</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
我不明白为什么所有的数据都被添加到一行中,这主要是因为无论有多少数据列表,.each
都只迭代一个。它在小提琴的例子中非常有效,但当我尝试进行一些修改时,我会遇到这种冲突。。
这个更新的each
应该可以做到这一点:
var eventChildren = $event.children("loan");
eventChildren.each(function(index, event){
console.log('test');
var $event = $(event),
addData = [];
addData.push( $event.children("user").children("username").text());
addData.push($event.children("user").children("password").text());
thisTable.fnAddData(addData);
});
loan
包含节点名user
的子级。因此,我们需要对loan
进行迭代,而不是对文档根进行迭代。
相关文章:
- 如何在脚本上添加新行
- 在不刷新整个网格的情况下,向Asp.net网格视图添加新行
- dhtmlx添加新行并启动单元格编辑器
- 如何在Google Geochart图表的工具提示文本中添加新行
- 如何在javascript中每次添加新行时都增加ordre值
- 两个表添加新行按钮-冲突
- 在Spring.message属性中添加新行时出错
- 使用Javascript在文本区域中添加新行
- 在java脚本的第一行之前添加新行
- sails.js更新或添加新行
- 使用ajax向表中添加新行
- 使用一些默认值在剑道网格中添加新行
- 添加新行后无法“刷新”灯丝组表锯响应表
- JQuery 数据表添加新行,如果该行已经存在,请将其删除并为该 ID 插入新行
- 续集 - 向表添加新行并关联表
- 如何在 jQuery 函数 text() 中添加新行
- 在表格顶部添加新行
- 添加新行动态引导日期时间选择器不起作用
- 如何在不影响 Jquery 数据表中其他行的情况下删除选定的现有数据并添加新行
- 分机.js确认方法添加新行字符