gpt4 book ai didi

javascript - Rivets.js rv-show 不适用于 rv-each

转载 作者:行者123 更新时间:2023-11-30 00:12:01 24 4
gpt4 key购买 nike

我是 Rivets.js 的新手。鉴于此代码:

<div id="main">

<div>
<button rv-on-click="toggle">
Toggle
</button>
</div>

<div>
Dynamic headers sould be visible: {showDynamicHeaders}
</div>

<table>
<thead>
<tr>
<th>Fixed header</th>
<th>Fixed header</th>
<th rv-show="showDynamicHeaders" rv-each-item="items">
{item.name}
</th>
</tr>
</thead>
</table>

</div>
var rvcontext = {};
var rview = rivets.bind($("#main"), rvcontext);

rvcontext.showDynamicHeaders = true;

rvcontext.items = [
{
name : "Dynamic header 1"
},{
name : "Dynamic header 2"
},{
name : "Dynamic header 3"
}
];

rvcontext.toggle = function(){
rvcontext.showDynamicHeaders = !rvcontext.showDynamicHeaders;
}

我希望表格的动态标题显示或不显示取决于 showDynamicHeaders 的值。但这似乎不起作用;相反,标题是否可见取决于 showDynamicHeaders初始值,但当值更新时它们的可见性不会改变。

参见 this fiddle一个活生生的例子。

我做错了什么?

最佳答案

尝试移动您的 rv-show<table>标签,像这样:

<table rv-show="showTable" >
<tbody>
<tr rv-each-item="items">
<td>{item.name}</td>
</tr>
<tbody>
</table>

working fiddle

编辑:另一种选择是在每个中添加一个 rv-class 标签,如下所示:

 <div rv-each-i="data" rv-class-hide="i.a | neq 1">
{i.a} - {i.b} ({i.c})
</div>

JavaScript:

var data = [
{a:1, b:"testing1", c:true},
{a:1, b:"testing1a", c:true},
{a:1, b:"testing1b", c:true},
{a:2, b:"testing2", c:false},
{a:2, b:"testing2a", c:true},
{a:50, b:"testing50", c:false}
];

rivets.formatters.neq = function(val, v2) { return val!=v2;};

$(document).ready(function() {
var $r = $('#rivets');
rivets.bind($r, {data:data});
});

working fiddle rv类方法的

关于javascript - Rivets.js rv-show 不适用于 rv-each,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36091060/

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