0

我正在为 ko.computed-function 和 with 绑定而苦苦挣扎。当按下“新建”按钮时,我想显示一个空的输入文本字段。从下拉列表中选择时,我希望文本字段显示下拉列表中选定的选项文本。

这是来自 viewModel.js:


// selected item from ticket drop down
self.selectedItem = ko.observable(null);

// status of button "New"
self.newIsPushed = ko.observable(false);

self.showName = ko.computed(function () {
        // logic for calculating when to show Name. 
        return (self.newIsPushed() && (self.selectedItem() ? (null) : true));
    }, self);

从我的 ascx 文件:


<select data-bind="options: ticketCollection, 
                   optionsCaption: 'Choose...', 
                   optionsText: 'ticketname', 
                   value: selectedItem"></select> 

<button type="button" name="btnNew"
   data-bind="click: newTicket, disable: newIsPushed">New</button> 

<p data-bind="with: showName"> 
   <label>Name: <input type="text" 
   data-bind="value: ticketname" /></label><br />
</p>  

为什么当我按下“新建”按钮或从我的 ddl 中选择另一个项目时输入字段没有更新???

干杯!

阿斯莱 :)

4

1 回答 1

0

替换<p data-bind="with: showName"><p data-bind="with: selectedItem">

于 2013-08-23T11:34:18.300 回答