为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery Validate Required Select

jQuery Validate Required Select

PIPIONE 2019-12-12 14:42:40
我正在尝试使用jQuery Validate插件来验证html select元素。我将“ required”规则设置为true,但是它始终通过验证,因为默认情况下选择了零索引。有什么方法可以定义所需规则使用的空值?UPD。例。假设我们有以下html控件:<select>  <option value="default">Choose...</option>  <option value="1">1</option>  <option value="2">2</option></select>我希望验证插件使用“默认”值为空。
查看完整描述

3 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

您可以编写自己的规则!


 // add the rule here

 $.validator.addMethod("valueNotEquals", function(value, element, arg){

  return arg !== value;

 }, "Value must not equal arg.");


 // configure your validation

 $("form").validate({

  rules: {

   SelectName: { valueNotEquals: "default" }

  },

  messages: {

   SelectName: { valueNotEquals: "Please select an item!" }

  }  

 });


查看完整回答
反对 回复 2019-12-12
?
慕容708150

TA贡献1831条经验 获得超4个赞


将值设为空并添加必需的属性


<select id="select" class="required">

<option value="">Choose an option</option> 

<option value="option1">Option1</option>

<option value="option2">Option2</option>

<option value="option3">Option3</option>

</select>


查看完整回答
反对 回复 2019-12-12
?
慕神8447489

TA贡献1780条经验 获得超1个赞

我不知道在问问题时(2010年)插件的情况如何,但是我今天遇到了同样的问题,并通过以下方式解决了该问题:


给您的选择标签一个名称属性。例如在这种情况下


<select name="myselect">


不必使用标签选项中的属性value =“ default”,而是禁用默认选项或按照Andrew Coats的建议设置value =“”


<option disabled="disabled">Choose...</option>


要么


<option value="">Choose...</option>


设置插件验证规则


$( "#YOUR_FORM_ID" ).validate({

    rules: {

        myselect: { required: true }

    }

});


要么


<select name="myselect" class="required">


Obs:Andrew Coats的解决方案仅在您的表单中只有一个选择时才有效。如果您希望他的解决方案可以使用多个选项,请在您的选择中添加名称属性。


希望能帮助到你!:)


查看完整回答
反对 回复 2019-12-12
  • 3 回答
  • 0 关注
  • 861 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信