使用 Parsley.js 验证表单

什么是 Parsley.js?

Parsley.js 是一个 jQuery 插件,用于在客户端进行表单验证。它能够通过简单的 HTML 标记快速实现表单验证功能。使用 Parsley.js,您可以很容易地定义表单验证规则,例如必填字段、最小长度、最大长度、电子邮件格式等。

如何使用 Parsley.js?

使用 Parsley.js 很简单。您只需要在表单元素上加上 data-parsley-validate 属性,就可以启用表单验证。例如:

<form id="my-form" data-parsley-validate>

<label for="email">电子邮件地址</label>

<input type="email" id="email" name="email" required>

<label for="password">密码</label>

<input type="password" id="password" name="password" data-parsley-minlength="6" required>

<button type="submit">提交</button>

</form>

上面的代码中,data-parsley-validate 属性启用了表单验证功能。输入框 email 设置了 required 属性,表示该字段是必填项。输入框 password 同时设置了 required 属性和 data-parsley-minlength="6" 属性,表示该字段是必填项,且最小长度为 6 个字符。

设置验证规则

除了上面例子中的 requireddata-parsley-minlength 属性,Parsley.js 还支持其他验证规则。例如:

data-parsley-maxlength:最大长度

data-parsley-type:字段类型(例如 emailnumberurl 等)

data-parsley-pattern:正则表达式

data-parsley-equalto:与另一个字段相等

data-parsley-range:数值范围

data-parsley-length:指定长度

data-parsley-date:日期格式

data-parsley-datetime:日期时间格式

等等

自定义错误消息

当表单验证失败时,Parsley.js 会显示默认的错误消息。例如,对于 required 属性验证失败的字段,会显示“这个值是必需的”消息。可以通过设置 data-parsley-required-message 属性来自定义错误消息。例如:

<input type="email" id="email" name="email" required data-parsley-required-message="请输入电子邮件地址">

类似地,可以设置其他验证规则的错误消息。例如:

<input type="text" name="username" data-parsley-minlength="6" data-parsley-minlength-message="用户名至少需要 6 个字符">

自定义验证器

如果以上提供的验证规则仍然不能满足您的需求,您可以编写自定义的验证器。一个验证器是一个 JavaScript 函数,它接受一个值作为参数,返回 true 表示验证通过,返回 false 表示验证失败。

例如,下面的代码定义了一个名为 evenNumber 的验证器,用于检查某个数值是否为偶数:

window.Parsley.addValidator('evenNumber', {

validateNumber: function(value) {

return value % 2 === 0;

},

messages: {

en: 'Please enter an even number.',

zh_cn: '请输入偶数。'

}

});

在上面的代码中,window.Parsley.addValidator() 方法注册了一个名为 evenNumber 的新验证器。该验证器使用 validateNumber 函数来验证数值是否为偶数。如果该函数返回 false,则表单验证失败,messages 属性定义了错误消息。

自定义验证器可以通过 data-parsley-evevNumber 属性来应用于表单元素。例如:

<input type="text" name="num" data-parsley-evenNumber>

事件

Parsley.js 还提供了一系列事件供您灵活地控制表单验证过程。例如:

form:submitting:表单提交前触发

form:submit:表单提交后触发

field:validated:字段验证后触发

field:success:字段验证成功后触发

field:error:字段验证失败后触发

field:reset:重置字段的错误状态后触发

等等

使用这些事件可以实现更加细致的表单验证控制。例如,下面的代码定义了一个名为 myValidationHandler 的事件处理函数,它在表单提交前进行自定义验证,如果验证失败,则取消表单提交:

$('#my-form').on('form:submitting', function() {

if (!myCustomValidation()) {

return false;

}

});

function myCustomValidation() {

// 自定义验证代码

if (/* 验证失败 */) {

return false;

} else {

return true;

}

}

总结

使用 Parsley.js 可以轻松地实现表单验证功能。它提供了一系列验证规则、自定义错误消息、自定义验证器、事件等功能,可以满足大多数表单验证需求。使用 Parsley.js,您只需要在 HTML 中添加一些属性即可实现表单验证,非常方便。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。