我想做可觀察對象的可觀察對象。例如:KnockoutJS可觀察對象的可觀察對象
var Project = function(id, name, custId) {
this.id = ko.observable(id);
this.name = ko.observable(name);
this.custId = ko.observable(custId);
}
var viewModel = function() {
this.newUpProj = ko.observable(new Project(null,null,null));
...
}
事情是這樣的......我想newUpProject
可觀察到和它的屬性是可觀。我也試過this.newUpProj = ko.mapping.fromJS(new Project());
EDIT1:它包裝箱對象,但它的屬性(ID,姓名...)不可觀測量...
EDIT2:使用HTML:
<div class="modal-body">
<p><input type="text" id="projNameTx" data-bind="value: newUpProj.name()" /></p><br>
<p><select data-bind="options: customers, optionsCaption: 'Choose...', value: newUpProj.custId(), optionsText: 'name', optionsValue: 'id'"
size="1"></select></p>
</div>
<div class="modal-footer">
<button class="btn" data-bind="click: clearModal" aria-hidden="true">Close</button>
<button class="btn btn-primary" data-bind="click: updateFlag() ? updateProject : addProject, enable: newUpProj.custId() && newUpProj.name()">Save</button>
</div>
正確的價值觀被加載到輸入和選擇中,但如果輸入爲空(例如),保存按鈕從不會被禁用,因爲更改不會進入模型。
你能發佈html嗎? – 2013-02-11 15:27:28