Javascript jQuery.valid()不工作?(验证插件)

Javascript jQuery.valid()不工作?(验证插件),javascript,jquery,flask,flask-wtforms,Javascript,Jquery,Flask,Flask Wtforms,我正在使用,但我的代码没有按预期工作。我想要的是,当我点击提交按钮时,程序将检查表单是否正确填写并包含url,然后运行一个函数。在这种情况下,它总是“真” 不确定这是否相关,但我正在使用Flask和WTForms: 表格: Html: 我尝试了dirn的建议,但即使两个字段都是空的,这仍然返回true。您可以这样尝试: var form = $( "#button1" ); form.validate(); $( "#update" ).click(function() { alert( "

我正在使用,但我的代码没有按预期工作。我想要的是,当我点击提交按钮时,程序将检查表单是否正确填写并包含url,然后运行一个函数。在这种情况下,它总是“真”

不确定这是否相关,但我正在使用Flask和WTForms:

表格:

Html:


我尝试了dirn的建议,但即使两个字段都是空的,这仍然返回true。

您可以这样尝试:

var form = $( "#button1" );
form.validate();
$( "#update" ).click(function() {
  alert( "Valid: " + form.valid() );
});

这将在单击按钮时而不是单击表单时验证表单。

您尚未设置任何验证规则。插件将这两个字段视为可选字符串。你可以通过几种方式来改变这一点

<input type="url" name="svn_url1" required>
另一种方法是对表单对象使用validate方法,并将验证规则传递给表单对象

$('#button1').submit(function() {
  var is_valid = $(this).validate({
      rules: {
        svn_url1: {
          required: true,
          url: true
        }
      }
    });
});

仅供参考。。。如果您提供jsfiddle,那就更好了。我仍然会得到同样的错误,它说Valid:True在每种情况下都是有效的。您有任何输入要验证吗?是的,我想问题是,因为我使用的是flask,所以我可以把{{form1.svn_url1}}放在上面,它使用WTForms创建一个输入文本字段,也许jQuery验证插件没有将此视为输入。你建议我怎么做?不要用烧瓶?我对flask一无所知,抱歉,我已经尝试了两种方法,但是,我仍然得到相同的错误。我更喜欢使用的方法是validate方法。你能看一下这个问题的更新,看看我做错了什么吗?
    $('#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');
        }
    });
});
var form = $( "#button1" );
form.validate();
$( "#update" ).click(function() {
  alert( "Valid: " + form.valid() );
});
<input type="url" name="svn_url1" required>
from wtforms.fields.html5 import URLField
from wtforms.validators import wtforms.validators.DataRequired

class SVNPath(Form):
    svn_url1 = URLField(validators=[wtforms.validators.DataRequired()])
$('#button1').submit(function() {
  var is_valid = $(this).validate({
      rules: {
        svn_url1: {
          required: true,
          url: true
        }
      }
    });
});