javascript - knockout validation 选择列表值

标签 javascript knockout.js

我有一个状态选择列表,数组的第一个值为“-”,因此用户必须更改它,而不会意外提交表单,其中“AK”是默认的第一个输入。问题是一旦表单加载“请选择另一个值”错误就会显示,因为初始值已被标记。

<td>State</td><td><select data-bind="options: $root.stateList, optionsText: 'state', optionsValue: 'state', value: selectedState"></select> </td>

这里是对应的js

self.selectedState = ko.observable("").extend({ notEqual: "-" });
self.stateList = [{state: "-"},{state: 'AK'}, {state:'AL'}....{state:'WY'}];

有没有更好的方法让列表中的第一个值“空白”,这样它就不会在表单加载后立即设置为不正确的输入?如果是这样,一个简单的 .extend({ required: true }); 会处理它的验证吗?

最佳答案

Is there a better way to have a "blank" first value in the list so that it's not set to an incorrect input as soon as the form loads?

是的。

查看optionsCaption parameter .

关于javascript - knockout validation 选择列表值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19308684/

相关文章:

javascript - ExtJS : Widget Combo resets value for all fields when i click on expand

javascript - 检查指挥官中的参数是否为空?

javascript - 加载后在 url 中使用 anchor 标记

javascript - 未为使用 Firefox 的 Knockout 单击绑定(bind)定义事件参数

javascript - 为什么所有 JavaScript 文档中的参数都是这样写的?

javascript - 如何使用 javaScript 获取元素

javascript - KnockoutJS 'checked' 绑定(bind)未应用于 customBinding?

javascript - Knockout JS 如何知道要传递的正确参数?

javascript - 更新 Knockout 中的可见绑定(bind)吗?

javascript - 当 url 为多层时,导航栏不会打开