gpt4 book ai didi

javascript - jQuery 手机 : refresh after dynamically adding rows to a table with column toggle

转载 作者:可可西里 更新时间:2023-11-01 02:42:37 25 4
gpt4 key购买 nike

我有一个关于 jQueryMobile“列切换表模式”的问题。

通过 Javascript 动态添加行后,切换出错。并不是说它根本不起作用,而是它以某种方式变得困惑,交换列或类似的奇怪行为。

我完全知道有一个"refresh"-method 正好适用于这种情况,但它在我的示例中不起作用。我也看了How to refresh JQuery mobile table after a row is added dynamically ,但它并不真正适用于我的问题。我发现的唯一其他类似问题是旧的,并且与 JQM 的版本 <=1.3.0 相关,当时不存在刷新方法。

我有这张 table

<table data-role="table" id="table" data-mode="columntoggle" class="ui-body-d ui-shadow table-stripe ui-responsive" data-column-btn-theme="b" data-column-btn-text="Columns to display..." data-column-popup-theme="a">
<thead>
<tr class="ui-bar-d">
<th data-priority="1">#</th>
<th data-priority="1">Data Code</th>
<th>Data Name</th>
<th>Value</th>
<th data-priority="1">Minimum</th>
<th data-priority="1">Maximum</th>
</tr>
</thead>
<tbody>
...
</tbody>
</table>

以及更新它的 Javascript 代码:

for (var i = 0; i < rows.length; i++) {
html = html + "<tr>\n";
for (var j = 0; j < rows[i].length; j++) {
html = html + "<td>" + rows[i][j] + "</td>\n";
}
html = html + "</tr>\n\n";
}

$("#table > tbody").append(html);
$("#table").table("refresh");

.


请参阅此 JSFiddle 以获得我的问题的最小化但有效的演示:http://jsfiddle.net/kkppd/


如果您尝试使用 JSFiddle,请将其与我的发现进行比较:

  1. “运行”代码。该网页应显示一些在 HTML 中硬编码的示例数据。列正确切换。
  2. 单击触发更新的按钮,类似于在我的原始应用程序中自动更新的方式。这会清空表格并重新添加相同的内容。之后我调用 JQM 的刷新方法。
  3. 表格看起来和以前一样 - 但试试“切换列”按钮:“最大”切换“最小”,“最小”切换“#”,“#”切换“数据码”等。

我做错了什么?

最佳答案

我遇到了同样的问题。在对 JQueryMobile 代码进行了一些修改之后,我想到了这个解决方法:

$("#table > tbody").append(html);
$("#table").table("refresh");

// Code to add
var columnIndex = 0;
$("#table-popup fieldset").find("input").each(function(){
var sel = ":nth-child(" + (columnIndex + 1) + ")";
$(this).jqmData("cells", $("#table").find("tr").children(sel));
columnIndex++;
});

关于javascript - jQuery 手机 : refresh after dynamically adding rows to a table with column toggle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16917605/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com