これが私のフィドルです:
テキストをクリックすると、サイドを編集可能にしようとしています。私はノックアウトサイトからこの例に従っています:
見る:
<p>
Name:
<b data-bind="visible: !editing(), text: name, click: edit"> </b>
<input data-bind="visible: editing, value: name, hasfocus: editing" />
</p>
<p><em>Click the name to edit it; click elsewhere to apply changes.</em></p>
脚本:
function PersonViewModel(name) {
// Data
this.name = ko.observable(name);
this.editing = ko.observable(false);
// Behaviors
this.edit = function() { this.editing(true) }
}
ko.applyBindings(new PersonViewModel("Bert Bertington"));
http://knockoutjs.com/documentation/hasfocus-binding.html
「サイド」のテキストをクリックすると、「編集」機能が表示されますが、divの表示は変わりません。これはスコーピングの問題だと思いますが、トラブルシューティングの方法がわかりません。