Я новичок в нокауте, в настоящее время я встретил странную проблему. То, что я хочу, чтобы использовать ko if-else bind
, смотрите код ниже:knockout if-else bind не может работать правильно
<table>
<thead>
something......
</thead>
<tbody>
<tr>
Problem comes here...
<!-- ko ifnot: editing -->
<td><span data-bind="text: Value" /></td>
<td><button data-bind="click: Edit">Edit</button></td>
<!-- /ko -->
<!-- ko if: editing -->
<td><input data-bind="value: Value"></td>
<td><button data-bind="click: Save">Save</button></td>
<!-- /ko -->
</tr>
</tbody>
</table>
В ViewModel:
function SettingData(){
var self = this;
self.editing = ko.observable(false);
self.Edit = function() {
self.editing(true);
};
self.Save = function() {
self.editing(false);
}
}
При запуске страницы, содержание, если и IFNOT заявление все вышли (это должно быть неправильно). Когда вы нажимаете «Редактировать», появляется только контент в выражении if, а содержимое в выражении ifnot исчезает, что хорошо, но когда нажимают «Сохранить», в этом случае появляется сообщение if, и ifnot.
Я не знаю, какая часть моего кода неверна, может ли кто-нибудь дать мне руку? Благодарю.
Он работает здесь, как вы хотите http://jsfiddle.net/GSvnh/5139/ –