使用jQuery表单规则显示时验证文本框

时间:2013-11-29 10:39:53

标签: php jquery html validation

我有一个表单,当用户在下拉菜单中选择“其他”时会生成文本框。

动态文本框生成已完成,我可以获取“其他”文本框的值。

但我的问题是

1)我想在显示其他文本框时对其进行验证..

如何验证任何Suggesstions请...

<form name="f2" id="f2" method="post" action="" enctype="multipart/form-data">
    Type:
    <select name="type"  id="type" onchange='CheckColors(this.value);'> 
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="others">others</option>
    </select>
    <input type="text" name="others" id="others" style='display:none;'/>
    <input type="submit" name="submit"/>
</form>

//这是验证表单的脚本..我想在它出现时验证另一个文本框..怎么做?

<script type = "text/javascript">
$(document).ready(function () {
    $("#f2").validate({
        debug: false,
        rules: {
            type: {
                required: true
            },
            others: {
                required: true
            },
            messages: {
                //messages for required
            }
        });
    }); 
</script>

我尝试了上述过程,但它总是并排显示所需的两次。

1 个答案:

答案 0 :(得分:3)

试试这个

$(document).ready(function () {
  $("#f2").validate({
    debug: false,
    rules: {
      type: {
        required: true
      },
      messages: {
        //messages for required
      }
    }
  });
});  

function CheckColors(value) {
  if(value=='others') {
    $('#others').show().attr('required','required');
  } else {
    $('#others').hide().removeAttr('required');
  }
}

从验证功能中删除此行,然后验证工作正常

others: {
   required: true
}

DEMO