使用Parsley.js验证表单
在本教程中,我们将展示如何使用Parsley.js进行表单验证。Parsley.js是一个主要用于表单验证的JavaScript库。Parsley可以以一种非常细微和简单的方式验证表单,它是目前广泛使用的表单验证库之一。
Parsley.js的特点
有许多理由可以选择Parsley验证JavaScript表单。以下是其中一些原因:
- 直观的DOM API - DOM API允许您在HTML标签中使用简单的英语,Parsley将处理其余部分。即使是简单的表单验证,您也不需要编写任何JavaScript代码。
-
动态表单验证 - Parsley可以轻松检测表单的修改,并相应地调整其验证。
-
大量验证器 - Parsley中内置了大量验证器。如果需要,我们还可以使用Ajax验证器。
-
高可靠性 - 它是无bug的,并且经过了严格的测试。
-
以用户体验为重点 - Parsley专注于用户界面和用户体验,我们甚至可以覆盖Parsley的几乎所有默认行为,以符合您的确切需求。
如何使用Parsley验证表单
现在我们了解了一些关于Parsley.js的信息,我们需要关注一个示例,其中我们将使用Parsley。考虑下面的”index.html”文件,其中包含一个具有嵌入的简单JavaScript代码的表单。
示例
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Parsely.js Example</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
crossorigin="anonymous"></script>
<script
src="https://cdn.jsdelivr.net/gh/guillaumepotier/Parsley.js@2.9.2/dist/parsley.js"></script>
</head>
<body>
<h2>Fill in the form and click the validate button at the bottom</h2>
<form id="demo-form" data-parsley-validate="">
<label for="fullname">Enter Your Full Name * :</label>
<input type="text" class="form-control" name="fullname" required="">
<br /><br />
<label for="email">Enter Your Email * :</label>
<input type="email" class="form-control" name="email" data-parsleytrigger="change" required="">
<br /><br />
<label for="contactMethod">Please Enter Your Preferred Contact Method*:</label> Email: <input type="radio" name="contactMethod"id="contactMethodEmail" value="Email" required=""> Phone: <input type="radio" name="contactMethod" id="contactMethodPhone" value="Phone">
<br /><br />
<label for="hobbies">Enter Your Hobbies (Optional, but 2 minimum):</label>
<p>
Coding <input type="checkbox" name="hobbies[]" id="hobby1"value="ski" data-parsley-mincheck="2"><br> Walking <input type="checkbox"name="hobbies[]" id="hobby2" value="run"><br> Eating <input type="checkbox" name="hobbies[]" id="hobby3" value="eat"><br> Sleeping <input type="checkbox" name="hobbies[]" id="hobby4" value="sleep"><br> Traveling <input type="checkbox" name="hobbies[]" id="hobby5" value="read"><br> Writing <input type="checkbox" name="hobbies[]" id="hobby6" value="code"><br></p>
<p>
<label for="heard">Heard about us via *:</label>
<select id="heard" required="">
<option value="">Choose..</option>
<option value="press">Press</option>
<option value="net">Internet</option>
<option value="mouth">Word of mouth</option>
<option value="other">Other..</option>
</select>
</p>
<p>
<label for="message">Message (20 chars min, 100 max) :</label>
<textarea id="message" class="form-control" name="message" dataparsley- trigger="keyup" data-parsley-minlength="20" data-parsleymaxlength=" 100" data-parsley-minlength-message="Come on! You need to enter at least a 20 character comment.." data-parsley-validationthreshold="10"></textarea>
</p>
<br>
<input type="submit" class="btn btn-default" value="validate">
</form>
<script>
(function() {('#demo-form').parsley().on('field:validated', function() {
var ok = ('.parsley-error').length === 0;('.bs-callout-info').toggleClass('hidden', !ok);
$('.bs-callout-warning').toggleClass('hidden', ok);
})
.on('form:submit', function() {
return false;
});
});
</script>
</body>
</html>
解释
在此代码中,我们有一个表单,其中有多个文本区域,需要不同的值。在每个值中,我们要么有一个文本关键字,要么有一个复选框,要么有一个选项。
此外,代码末尾还有一个“验证”按钮。当您点击该按钮但未填写任何表单时,您将从Parsley中获得一个弹出错误提示;当您输入的字段与其预期不符时,您将从Parsley.js获得一个验证错误提示。
您可以在此处运行此代码,然后根据您的选择填写不同的字段以进行测试。
结论
在本教程中,我们使用了一个简单的示例来演示如何使用Parsley.js在JavaScript中验证表单。