我目前正在玩欧芹并尝试将其放入我的 Meteor 应用程序中,但我似乎无法使用它来验证。我知道这可能只是一个基本问题,但我已经寻找了很长时间,但似乎找不到原因。
这是我的代码。
HTML
<head>
<title>interestCalc</title>
{{> interestCalc}}
<form id="formInterest" class="form-horizontal">
<div class="form-group">
<label for="txtInterest" name="txtInterest" class="col-sm-2 control-label">Interest rate</label>
<div class="col-sm-6">
<input type="text" data-parsley-required="true" class="form-control" id="txtInterest"
placeholder="Interest Rate">
</div>
</div>
<div class="form-group">
<button
class="btn btn-success"
id="saveButton"
type="submit">
Next
</button>
</div>
</form>
JS
if(Meteor.isClient) {
Template.interestCalc.events = {
'click #saveButton': function(e,t) {
var $form = $('#formInterest');
if ($form.parsley('validate')) {
alert('done');
}
return false;
}
}
}
if (Meteor.isServer) {
Meteor.startup(function () {
// code to run on server at startup
});
}
现在,因为它只是一个小型学习应用程序,所以我刚刚将所有内容粘贴到此处,但我可以说我可以访问点击事件。但是,我假设如果文本框中没有任何内容,我的 $form.parsley('validate') 调用应该返回 false,并且我不应该收到警报按钮。但是,我似乎总是收到警报框。
我对 Meteor 或 ParsleyJS 的工作原理有什么遗漏吗?
最佳答案
您必须在调用 validate
后调用 parsley('isValid')
。
示例代码:
//Validate the inputs
$form.parsley('validate');
// Get the status of validity
var isValid = $form.parsley('isValid');
if (isValid) {
alert('done');
}
关于javascript - 为什么 Parsley 不验证表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23935938/