Я связал простой массив строк со списком.
Нокаут отображает это правильно.Выберите строку для связанного строкового массива
<input data-bind="value: clicked" />
<ul data-bind="foreach: strArr, click: $root.selectStr">
<li data-bind="text: $data"></li>
</ul>
Когда пользователь нажимает на один из элементов списка, я хочу заполнить строку, связанную с элементом списка. Однако объект, который получает функция моего клика, кажется полной моделью нокаута.
function StringViewModel() {
var self = this;
self.strArr = ko.observableArray(["one", "two", "three"]);
self.clicked = ko.observable();
self.selectStr = function (str) {
console.log(str);
self.clicked(str);
}
}
ko.applyBindings(new StringViewModel());
Вот jsFiddle
Как я пишу selectStr
функцию так, что он будет отображать текст из элемента списка; либо из «одного», «двух», «трех».
Это казалось легкой проблемой для решения, но с момента моего первого дня с нокаутом, может быть, мне не хватает чего-то основного.
Спасибо! Это сработало. 8 минут, прежде чем я смогу принять. – nunespascal
Добро пожаловать. –