【发布时间】:2010-09-29 18:16:00
【问题描述】:
我有一个默认值(请选择)为 0 的选择列表。这是由于支付处理系统的原因,超出了我的控制范围。我有一个 add.Method 说明如果选择的值为“0”则返回 false,否则返回 true。它工作正常,除了当您在提交并收到错误后将选择的值更改为其他值时,仍然显示错误消息。我该如何解决这个问题
HTML:
<form action="" method="post" id="SinglePmnt">
<td>
<select name="technology" class="select" id="singleTech">
<option value="0" selected="selected"> Please Select</option>
<option value="Interactive Brokers"> Interactive Brokers</option>
<option value="MB Trading"> MB Trading</option>
<option value="Patsystems"> Patsystems</option>
<option value="PFG"> PFG (Peregrine Financial)</option>
<option value="TD AMERITRADE"> TD AMERITRADE</option>
<option value="Trading Technologies"> Trading Technologies</option>
<option value="Vision Financial Markets"> Vision Financial Markets</option>
<option value="Hosted"> Zen-Fire</option>
</select>
</td>
<td>Single Payment of $995</td>
<td>
<input type="hidden" name="item_number" value="34">
<input type="submit" value="" class="orderNow" />
</td>
</form>
使用 jquery.validate.js 的验证规则
$(document).ready(function() {
$.validator.addMethod(
"SelectTechnology",
function(value, element) {
if ($("#singleTech").val() === '0'){
return false;
} else return true;
},
"Please Select a Technology"
);
var validator = $("#SinglePmnt").validate({
rules: {
technology: {
SelectTechnology: true
}
},
errorElement: "span",
errorPlacement: function(error, element) {
error.appendTo(element.parent("td"));
}
});
});
看不到错误,感谢您的帮助。 谢谢
【问题讨论】:
-
如果您可以在 jsfiddle.com 上模拟它可能会有所帮助。根据你所说的,我很难弄清楚到底是什么错误。
-
似乎无法在 js fiddle 上添加验证插件。基本上,当您选择不同的值时,它不会清除错误消息。它应该这样做,而是不断添加错误消息。 jsfiddle.net/Yjt98
标签: jquery validation