
本文档旨在指导开发者如何在 JavaScript 中实现表单提交前的用户输入验证,确保提交的数据符合预期的格式(例如,仅允许数字)。通过监听表单的 submit 事件,我们可以拦截提交请求,执行验证逻辑,并在验证失败时阻止表单提交,从而提高数据质量和用户体验。本文将提供详细的代码示例和解释,帮助您轻松掌握这一技巧。
首先,我们需要一个包含需要验证的输入字段的 HTML 表单。以下是一个示例,其中包含三个文本输入框,分别用于输入仓库 ID (W_ID)、区域 ID (D_ID) 和客户 ID (C_ID),并且都要求仅输入数字。
<form
id="myForm"
action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>"
method="POST"
>
<table>
<tr>
<td>Select Warehouse:</td>
<td>
<input
type="text"
id="W_ID"
name="W_ID"
placeholder="numbers only"
/>
</td>
<span class="invalid-feedback"><?php echo $warehouse_err; ?></span>
</tr>
<tr>
<td>Select District:</td>
<td>
<input
type="text"
id="D_ID"
name="D_ID"
placeholder="numbers only"
/>
</td>
<span class="invalid-feedback"><?php echo $district_err; ?></span>
</tr>
<tr>
<td>Select Customer:</td>
<td>
<input
type="text"
id="C_ID"
name="C_ID"
placeholder="numbers only"
/>
</td>
<span class="invalid-feedback"><?php echo $customer_err; ?></span>
</tr>
</table>
<button type="submit">Submit</button>
</form>关键点:
接下来,我们将使用 JavaScript 来验证表单输入。我们将监听表单的 submit 事件,并在事件处理函数中执行验证逻辑。
立即学习“Java免费学习笔记(深入)”;
var form = document.getElementById("myForm");
form.addEventListener("submit", function (e) {
e.preventDefault();
var target = e.target;
var formData = new FormData(target);
var data = Object.fromEntries(formData.entries());
var regex = /^[0-9]+$/;
if (
!data.W_ID.match(regex) ||
!data.D_ID.match(regex) ||
!data.C_ID.match(regex)
) {
alert("Only numbers accepted.");
} else {
// Continue form submittion.
this.submit();
}
});代码解释:
将 JavaScript 代码嵌入到 PHP 文件中,只需将代码放在 <script> 标签内即可。
<?php // PHP 代码... ?> <script> // JavaScript 代码 (如上例) </script> <?php // 更多 PHP 代码... ?>
注意事项:
通过本文,您学习了如何使用 JavaScript 在表单提交前验证用户输入,确保输入的数据符合预期的格式。 这有助于提高数据质量,改善用户体验,并减少服务器端的错误处理。记住,客户端验证只是第一道防线,服务器端验证仍然是必不可少的。
以上就是JavaScript 表单提交前验证:确保用户输入符合规范的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号