http://bassistance.de/jquery-plugins/jquery-plugin-validation/看起来是最好的jquery验证插件。我似乎无法得到它的工作在jQuery UI对话框。
此代码在对话框外部工作DIV:
- <script type="text/javascript">
- $(document).ready(function() {
- $("form").validate();
- $("a").bind("click",function() { alert($("form").valid()); });
- });
- </script>
- <form method="get" action="">
- <p>
- Name
- <input id="name" name="name" class="required" minlength="2" />
- </p>
- <p>
- <input id="cemail" name="email" size="25" class="required email" />
- </p>
- <a href="#" id="clickTest">Click</a>
- </form>
这工作伟大。当我将窗体移动到我的对话框div,打开对话框,并单击链接,它返回true,没有bueno。
解决方法
如果有人遇到这个问题,jQuery-UI对话框不附加到表单,它附加在< / body>之前,因此要验证的元素在< form>< / form>部分:
要解决这个问题,只需在创建对话框时将对话框移动到表单内即可,如下所示:
- $("#mydiv").dialog("open").parent().appendTo(jQuery("form:first"));