jQuery .valid() 不起作用?(验证插件)
jQuery .valid() not working? (Validation Plugin)
我正在使用jQuery验证插件,但我的代码没有按预期工作。我想要的是,当我单击提交按钮时,程序将检查表单是否正确填写并包含URL,然后运行一个函数。在这种情况下,它总是alert('true
)。
$(document).ready(function(){
$('#button1').submit(function() {
if($("#button1").valid()){
alert('true');
}
else{
alert('false');
}
});
});
不确定这是否相关,但我正在使用 Flask 和 WTForms:
形式:
class SVN_Path(Form):
svn_url1=StringField('SVN Directory:',[validators.URL()])
svn_url2=StringField('SVN Directory:',[validators.URL()])
目录:
<form id="button1" action="{{ url_for('test4') }}"method="post" name="SVNPATHS">
{{form1.hidden_tag()}}
<br>
<div class="svninput" id="input1">
{{ form1.svn_url1.label }}
{{ form1.svn_url1 }}
</div>
<input id="update" class="button" type="submit" name="updatepaths" value="Update">
<div class="svninput" id="input2">
{{ form1.svn_url2.label }}
{{ form1.svn_url2 }}
</div>
</form>
更新
$('#button1').submit(function(){
var is_valid = $(this).validate({
rules: {
svn_url1: {
required: true,
url: true
},
svn_url2: {
required: true,
url: true
}
}
});
if(is_valid){
alert('true');
}
else{
alert('false');
}
});
});
我尝试了 dirn 的建议,但即使两个字段都为空,这仍然会返回 true。
你可以这样尝试:
var form = $( "#button1" );
form.validate();
$( "#update" ).click(function() {
alert( "Valid: " + form.valid() );
});
这将在单击按钮时验证表单,而不是在单击表单时验证表单。
您尚未设置任何验证规则。该插件将这两个字段视为可选字符串。您可以通过几种方式更改此设置。
<input type="url" name="svn_url1" required>
(请注意,您有时将其称为svn_url1
,有时称为svn_url1s
。
此目的的最简单方法是使用 WTForm 的URLField
from wtforms.fields.html5 import URLField
from wtforms.validators import wtforms.validators.DataRequired
class SVNPath(Form):
svn_url1 = URLField(validators=[wtforms.validators.DataRequired()])
执行此操作的另一种方法是对表单对象使用 validate
方法并将验证规则传递给它。
$('#button1').submit(function() {
var is_valid = $(this).validate({
rules: {
svn_url1: {
required: true,
url: true
}
}
});
});
相关文章:
- Jquery表单验证插件-如果选中复选框,如何在提交时执行某些操作
- jQuery验证插件submitHandler Ajax
- Jquery 验证插件 - 字段仍然产生错误
- 在使用 jQuery 验证插件进行验证后,使用 AJAX 提交表单
- 附加要使用的变量jQuery验证插件
- Jquery验证插件在与<发件人:form>标签
- jquery在动态表单输入上验证插件不起作用
- 表单验证消息(使用jQuery验证插件)
- jQuery验证插件-比较两个选择下拉列表的自定义方法
- jQuery验证插件,如果.is(“:已检查”),则需要该插件
- jQuery验证插件停止表单提交,提交按钮获胜'不起作用
- 如果选中了上一个复选框,则需要的验证插件
- jQuery表单验证插件's只有文字字段的问题
- Jquery验证插件两个按钮
- jquery验证插件-错误删除
- jQuery验证插件-表单不提交
- [contenteditable]元素和jQuery验证插件的问题
- 使用jquery验证插件检查数据库中是否存在电子邮件
- 如何从jQuery验证插件函数中删除AJAX
- 如何使用 Jquery 验证插件专门验证某个表单字段