首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >knockout.js -设置空选择

knockout.js -设置空选择
EN

Stack Overflow用户
提问于 2013-03-19 00:05:05
回答 1查看 11.3K关注 0票数 19

我正在尝试使用knockout.js来填充和管理一个<select/>框。我希望初始值为空。

但是,我在任何时候都无法强制托管值为空,更不用说一开始了。

例如,考虑this fiddle

HTML:

代码语言:javascript
复制
<select data-bind="options: myOptions, value: myValue"></select> aka
<span data-bind="text: myValue"></span>

<div>
    <button data-bind="click: setMyValue(null)">clear the selection</button>
    <button data-bind="click: setMyValue('one')">select "one"</button>
    <button data-bind="click: setMyValue('four')">select "four"</button>
</div>
<ul data-bind="foreach: log">
    <li>message: <span data-bind="text: message"></span></li>
</ul>

JS:

代码语言:javascript
复制
function Model() {
    var self = this;
    self.myOptions = ['one', 'two', 'three', 'four'];
    self.myValue = ko.observable();
    self.setMyValue = function (val) {
        return function(){
            this.log.push({
                message: "ok, trying to set value as " + val
            });
            self.myValue(val);
        };
    };
    self.log = ko.observableArray([]);
}
var model = new Model();
ko.applyBindings(model);

select "one"select "four"按钮通过强制更新myValue()来更改选择。但是,清除选择按钮不起作用。myValue(null)which is what I thought was the proper way to do it未清除所选内容。

我做错了什么?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15481380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档