【发布时间】:2017-06-09 04:58:06
【问题描述】:
我最近开始学习knockoutjs(我认为它很棒。)但是弄乱它并学习如何添加到数组中,我被卡住了,需要一点帮助。 Fiddle can be found here
这是我的html代码:
<h3>We need more animals</h3>
<form data-bind="submit: addAnimal">
<input type="text" data-bind="value: animalToAdd, valueUpdate: 'afterkeydown'"/>
<button type="submit">Add animal</button>
</form>
<select data-bind="options: animalArray, optionsText: 'name'"></select>
<p data-bind="text: selectedAnimal"></p>
这是我的 knockoutjs 代码:
function viewModel(){
var self = this;
self.animalArray = ko.observableArray([
{
name: 'elephant'
},
{
name: 'dog'
},
{
name: 'cat'
}
]);
self.animalToAdd = ko.observable();
self.addAnimal = function(){
if(self.animalToAdd() != ''){
self.animalArray.push(self.animalToAdd());
self.animalToAdd('');
}
alert(self.animalToAdd());
}
}
ko.applyBindings(viewModel);
由于某种原因,我无法让新动物进入当前的动物数组 - 我不是 100% 我做错了什么,因为它输入了值,而不是文本。
任何帮助都会很棒:)
【问题讨论】:
标签: javascript arrays knockout.js