配列に項目がある場合のみテーブルを表示できるようにしたいと考えています。私はこのjsfiddleの例に自分のニーズを単純化しました。knockout.jsは配列が空であるかどうかに基づいて可視状態を変更します
JS:
var view_model = {
lines: ko.observableArray([
{
content: 'one'},
{
content: 'two'},
{
content: 'three'},
{
content: 'four'},
]),
remove: function(data) {
view_model.lines.remove(data);
}
};
ko.applyBindings(view_model);
HTML:
<span data-bind="visible:lines">Lines Exist</span>
<ul data-bind='foreach:lines'>
<li>
<button data-bind="click:$parent.remove">
Remove
</button>
<span data-bind="text:content"></span>
</li>
</ul>
は基本的に私は、行がテーブルから削除することができ、ウェブアプリを持っています。 array.length == 0
の場合は、テーブル全体を非表示にします。
登場したときに、メッセージを非表示にする場合これは実際に一度に機能しましたか? 'data-bind =" visible:lines "'は現在動作していません。あなたのフィドルをチェックしてください。 'data-bind =" visible:lines()。length "'は動作しますが、あまりエレガントではありません:/ – Will
私はちょうどフィドルを実行し、行を削除してテーブルを削除しました。 –
奇妙なことに、私のためではありません。 http://i.stack.imgur.com/onb6q.png – Will