knockoutjs'购物车编辑'的例子有jquery验证插件问题

时间:2011-10-28 23:36:01

标签: jquery jquery-validate knockout.js

我在http://knockoutjs.com/examples/cartEditor.html(jsFiddle - http://jsfiddle.net/rniemeyer/adNuR/)上使用了原始的“购物车编辑器”示例,并在其中添加了jquery验证插件。我想验证第一个Category选择列表以使其成为必需。所以我做了以下更改:

  • 使提交按钮只是一个直接type=submit输入
  • 围绕<form>
  • 中的控件
  • 在脚本结束时执行$("form").validate()
  • class='required'
  • 中添加了<select>
  • uniqueName: true
  • 中添加了data-bind

这是我制作的jsFiddle:http://jsfiddle.net/niner/JXJtj/3/。因此,如果category列表中没有任何内容,则验证将起作用。但是,如果我选择了有效的选择(即摩托车),当我按下“提交”时,它仍然会显示“该字段是必需的”。即使我正确选择了所有其他选项,我仍然会在category选择控件上出现验证错误。有人可以看看,让我知道我在这里缺少什么?

感谢。

1 个答案:

答案 0 :(得分:0)

您的选项都没有值,因此验证始终失败,因为.val()始终返回空字符串。您可以通过向optionsValue: "name"表达式添加data-bind来为您的选项提供值:

http://jsfiddle.net/gilly3/JXJtj/4/