JQuery验证div内容

时间:2012-11-13 03:04:26

标签: jquery html jquery-validate

我正在尝试单击保存按钮,然后在我的div部分调用validate函数,其中所有需要验证的字段都具有所需的标记。

    <script type="text/javascript">
        $(document).ready(function () {
            $("#button").click(function() {
                $('#MyDIv').valid();
            });
        });

    </script>

<div id="MyDIv">
  <input type="text" class="required" id="id1" />
  <input type="text" id="id2" />
  <input type="button" id="button" />
</div>

使用此代码我得到一个验证器是未定义的错误。我不能使用表格。

2 个答案:

答案 0 :(得分:0)

DEMO: http://jsfiddle.net/3BKcp/2/

在表单字段周围包裹<form>标记,如下所示:

<div id="MyDIv">
     <form method="post" action="/next-page.html">
        <input type="text" class="required" name="id1" id="id1" />
        <input type="text" class="required" name="id2" id="id2" />
        <input type="button" id="button" />
     </form>
</div>

并将您的JavaScript更改为以下内容:

<script>
$(document).ready(function(){
    $('#MyDIv form').validate();
    $("#button").click(function(){
        $(this).closest('form').submit();
    });
});
</script>

答案 1 :(得分:0)

你没有打电话给validate()并且你没有使用表格,所以它不会工作

在使用此方法检查之前,需要在表单上调用

validate()

你可以像下面这样只使用jquery

  var required =$(".required").val()
 if((/^[a-zA-Z ]+$/.test(name)) && reqiired.length >6 ){}

如果需要是文本而您只想要字母而不是数字

如果

  1. 用户名而不是试用/^[a-z0-9_-]{3,16}$/
  2. 密码比/^[a-z0-9_-]{6,18}$/
  3. 密码
  4. 电子邮件,而不是/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
  5. url而不是/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/