代码似乎被连接起来(像这样)
jQuery("#contactForm").validationEngine();
因为如果出现以下情况,它会验证并引发错误气泡:
但是如果你什么也不做,除非点击提交按钮,否则它不会验证并引发错误气泡。在那种情况下,它只是提交。一旦你点击该字段或输入任何内容,它似乎都有效。
我错误配置了什么?
HTML:
<form class = "contactform" id = "contactForm">
<fieldset>
<div class="contactform-name contactform-field">
<label class="contactform-label" for="contactform-name">Name:
<br>
</label>
<input class="validate[required,minSize[8]] contactform-input" type="text" id="contactform-name" name="name" />
</div>
<div class="contactform-email contactform-field">
<label class="contactform-label" for="contactform-email">Email Address:<br></label>
<input value class="validate[required,custom[email]] contactform-input" type="email" id="contactform-email" name="contactform-email" />
</div>
<div class="contactform-text contactform-field">
<label class="contactform-label" for="contactform-text">Message:
<br>
</label>
<textarea class="validate[required,minSize[12]]contactform-input" name="text" id="contactform-text" > </textarea>
</div>
<input class="contactform-button" type="submit" name="submit" value="Send" />
</fieldset>
</form>
JavaScript(它在Meteor中运行):
Template.Contact.rendered = function () {
jQuery("#contactForm").validationEngine();
}
答案 0 :(得分:0)
我从来没有使用过这个引擎,但是从文档我发现'attach'会将验证器附加到form.submit。可以这么简单吗?
https://github.com/posabsolute/jQuery-Validation-Engine#attach
修改强>
您也可以对提交事件进行处理(如果上述提示无效)。
这样的事情(没有经过测试,但应该让你走上正确的道路):
Template.templateName.events({
'submit': function(event) {
// Prevent the submit with preventDefault()
event.preventDefault();
// Do something to check the submit etc.
}
});