1

我正在使用 Parsley.js 来验证我的表单。我告诉 Parsley 通过添加...来监控表单

<form data-validate="parsley" name="myform"> 

我的元素看起来像:

<input type="text" name="username" data-required="true"/>

如果您忽略必填字段并尝试使用此按钮提交表单...

<input type="submit" value="Submit"/> 

Parsley 显示错误并且不允许提交表单。但是,如果您改用以下提交方法...

<a href="#" onClick="document.myform.submit();"> Submit </a> 

Parlsey 只是忽略错误并提交表单。到底是怎么回事?Parsley 是否专门监听 input[type=submit] 元素而不是表单本身的提交?(我需要将“提交”功能设为链接,因为我想对其应用特殊样式。)

4

2 回答 2

5

我不确定欧芹如何计算它需要验证,但你总是可以自己触发验证document.myform.parsley( 'validate' );,所以在你的情况下你必须这样做:

if (document.myform.parsley( 'validate' ))  
     {document.myform.submit();}
于 2013-11-07T21:03:38.330 回答
2

我希望 Parsley 自动有一个 on submit 处理程序,但直到我从源代码中找到你可以这样做:

$('form#my-form').on "submit", (e)->
  $(this).parsley().validate()

请注意,这是咖啡脚本。JS将是

$('form#my-form').on("submit", function(e) {
  return $(this).parsley().validate();
});

当然,您的所有输入都必须设置数据属性,例如:

data-parsley-required="true"
于 2014-11-01T14:50:25.153 回答