的值的子项集合在最近几天我阅读了大量文章,快速入门和教程,但是当向可观察数组添加项目时,它们或多或少都会将空项目,并让用户在创建后填写剩下的内容,但是我想反过来。将项目添加到表单值为
下面的淘汰赛出价工作,直到下拉列表填充和按钮被禁用如果textarea是空的,但这是我到目前为止。
我的观点的模型和数据我用的是在这里找到:Child collection mapping not firing 我不知道我是否应该在单独的线程他们在这里复制,或让他们的可读性
我想才达到是增加一个新的可观察的项目从我的收藏“文本”与下拉列表中的语言和点击按钮时从textarea的文本。
下面这部分内容是引导模式内容的一小部分,它绑定到我的根视图模型上集合的“selectedItem”。
<div class="modal fade" data-backdrop="static" data-bind="showModal:selectedItem, with:selectedItem">
<!-- Here is code for enumerating from collection "Texts", but i removed it for readability, and put focus on the "Add part" below -->
<div class="form-group">
<label class="col-md-3 control-label col-md-offset-2">Language</label>
<div class="col-md-6">
<select data-bind="options: $root.AvailableLanguages, optionsText:'Name', optionsValue:'Id'" class="form-control"></select>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label col-md-offset-2">Translation</label>
<div class="col-md-6">
<textarea class="form-control" data-bind='value: $root.itemToAdd, valueUpdate: "afterkeydown"'></textarea>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label col-md-offset-2"><button class="btn btn-primary btn-sm" data-bind="click: addItem, enable: $root.itemToAdd().length > 0">Add</button></label>
</div>
</div>
您可以创建一个展示的jsfiddle你不能去上班? – 4imble
http://jsfiddle.net/cSE5X/2/ - 我从来没有使用JSFiddle,所以我不知道要在那里添加什么,但那是一个基本上我今天有。 如果我绑定addValues在窗体标签上提交它不会被解雇,并且页面被张贴,但是如果我绑定它来点击按钮它会被解雇,但是如果我使用alert(ko.toJSON(element )),我在“selectedItem”中获取模型,而不是从我的表单中获取模型。 – Pochen
对不起,我仍然无法弄清楚你正在尝试做什么。在最简单的层面上,你想达到什么目标?剥去任何无关紧要的东西,并告诉我确切的问题。这听起来像你只是想点击一个按钮,并添加一个新的项目有一个集合有两个值,一个从下拉菜单,另一个从文本框,这是正确的? – 4imble