新闻中心
如何使用 jQuery 在输入框满足 10 位数字时启用按钮

本文介绍了如何使用 jQuery 实时监测输入框的数字位数,当输入框中的数字达到 10 位时,自动启用提交按钮。通过监听 `keypress` 事件并结合正则表达式进行验证,可以实现这一功能,提升用户体验。文章提供了详细的代码示例和注意事项,帮助开发者快速实现该功能。
在 Web 开发中,经常会遇到需要验证用户输入的情况。例如,在注册或登录时,需要验证手机号码是否符合规范。本文将介绍如何使用 jQuery 监听输入框的输入,并在输入框中的数字达到 10 位时,自动启用提交按钮。
HTML 结构
首先,我们需要一个包含输入框和提交按钮的 HTML 结构。以下是一个简单的示例:
<div class="form-group">
<label for="exampleInputEmail3">Phone Number</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text">+ 91</span>
</div>
<input type="number" class="form-control" id="pnum" name="phone_number" oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*?)\..*/g, '$1');" maxlength="10" required>
</div>
</div>
<input type="submit" name="submit" disabled id="submitButton" value="Submit" class="btn btn-primary mr-2">在这个例子中,我们使用了一个 input 元素作为数字输入框,id 为 pnum,并设置了 maxlength="10" 限制输入的最大长度为 10。oninput 属性用于在每次输入时移除非数字字符。 提交按钮的 id 为 submitButton,初始状态为禁用 (disabled)。
jQuery 实现
接下来,我们将使用 jQuery 来实现输入框内容变化的监听和按钮的启用。
秀脸FacePlay
一款集成AI换脸、照片跳舞等多种AI特效玩法的App
124
查看详情
$(document).ready(function() {
$('#pnum').on('input', function(e) {
const value = e.target.value;
var regex = new RegExp("^[0-9]{10}$"); // 正则表达式匹配10位数字
if (regex.test(value)) {
$('#submitButton').prop('disabled', false); // 启用提交按钮
} else {
$('#submitButton').prop('disabled', true); // 禁用提交按钮
}
});
});这段代码做了以下几件事:
- $(document).ready(function() { ... });: 确保在文档加载完成后执行 jQuery 代码。
- $('#pnum').on('input', function(e) { ... });: 监听 id 为 pnum 的输入框的 input 事件。input 事件在每次输入框内容发生变化时触发。
- const value = e.target.value;: 获取输入框的当前值。
- var regex = new RegExp("^[0-9]{10}$");: 创建一个正则表达式,用于匹配 10 位数字。 ^ 表示字符串的开始,[0-9] 表示匹配 0-9 的数字,{10} 表示匹配 10 次,$ 表示字符串的结束。
- if (regex.test(value)) { ... }: 使用正则表达式测试输入框的值是否符合 10 位数字的格式。
- $('#submitButton').prop('disabled', false);: 如果输入框的值符合 10 位数字的格式,则移除 submitButton 按钮的 disabled 属性,启用按钮。
- $('#submitButton').prop('disabled', true);: 否则,添加 disabled 属性,禁用按钮。
完整代码示例
将 HTML 结构和 jQuery 代码结合起来,得到完整的代码示例:
<!DOCTYPE html>
<html>
<head>
<title>Enable Button on 10 Digits Input</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<div class="container">
<div class="form-group">
<label for="exampleInputEmail3">Phone Number</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text">+ 91</span>
</div>
<input type="number" class="form-contr
ol" id="pnum" name="phone_number" oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*?)\..*/g, '$1');" maxlength="10" required>
</div>
</div>
<input type="submit" name="submit" disabled id="submitButton" value="Submit" class="btn btn-primary mr-2">
</div>
<script>
$(document).ready(function() {
$('#pnum').on('input', function(e) {
const value = e.target.value;
var regex = new RegExp("^[0-9]{10}$");
if (regex.test(value)) {
$('#submitButton').prop('disabled', false);
} else {
$('#submitButton').prop('disabled', true);
}
});
});
</script>
</body>
</html>注意事项
- 确保引入 jQuery 库。
- 根据实际情况修改 HTML 结构和 jQuery 选择器。
- 可以使用不同的正则表达式来匹配不同的输入格式。
- 如果需要支持复制粘贴,可以同时监听 paste 事件。
- 可以使用 trim() 方法去除输入框值两端的空格,避免空格影响验证结果。
总结
本文介绍了如何使用 jQuery 监听输入框的输入,并在输入框中的数字达到 10 位时,自动启用提交按钮。通过监听 input 事件并结合正则表达式进行验证,可以实现这一功能,提升用户体验。这种方法可以应用于各种需要验证用户输入的场景,例如注册、登录、表单提交等。记住,要根据实际需求调整代码,并注意一些细节问题,例如引入 jQuery 库、修改选择器、支持复制粘贴等。
以上就是如何使用 jQuery 在输入框满足 10 位数字时启用按钮的详细内容,更多请关注其它相关文章!
# 这一
# 黄岛seo招聘
# 短视频seo系列
# 微易seo
# 养殖行业seo优化
# 建阳区公司seo报价
# 合肥网站推广贵不贵
# 网站推广营销费用怎么算
# 网站建设合同制老师
# 安溪网站建设地址
# 常熟外贸商城网站建设
# 可以使用
# 并在
# 单选框
# 框中
# 选择器
# css
# 如何使用
# 表单
# 输入框
# .net
# 表单提交
# cdn
# ai
# 正则表达式
# ajax
# git
# bootstrap
# js
# html
# jquery
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
铃兰之剑为这和平的世界希里技能组及加点推荐
J*aScript数组对象转换:按指定键分组与值收集
NVIDIA股价11月重挫12%:下月有望好转 但难回5万亿美元巅峰
J*a 递归快速排序中静态变量的状态管理与陷阱
《GTA6》开发画面疑似泄露!这次可不是AI了
PyTorch模型训练准确率不提升:诊断与修复常见指标计算错误
C#如何安全地从用户上传的XML文件中读取数据? 验证与清理策略
Golang如何优雅处理error_Golang error处理最佳实践总结
照顾宝贝2小游戏点击立即在线玩
Composer的 "conflict" 字段有什么用_如何声明不兼容的包以避免依赖冲突
今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程
Win11怎么设置开机NumLock亮 Win11修改注册表InitialKeyboardIndicators值
sublime怎么预览Markdown渲染效果_Markdown Preview插件 for sublime教程
C++如何检测键盘输入_C++ _kbhit与_getch函数非阻塞输入
MAC的“快捷指令”怎么同步到iPhone_MAC利用iCloud同步所有设备的自动化指令
Log4j Console Appender性能瓶颈与高并发优化策略
多闪网页版在线观看免费入口_多闪官网访问入口
Golang切片为何属于引用类型_Golang slice底层结构与引用语义说明
Tabulator表格日期时间排序问题及自定义解决方案
Win11文件资源管理器卡顿怎么修 Win11重置资源管理器进程优化响应速度【修复方法】
c++如何使用chrono库处理时间_c++标准库时间与日期操作
抖音网页版怎么|直播|_抖音网页版开播操作指南
css卡片内容溢出如何处理_使用overflow隐藏或scroll显示内容
在J*a中如何捕获IndexOutOfBoundsException_索引越界异常防护方法说明
单12V-2×6实现为RTX 5090供电750W!甚至都没敢跑分
如何将HTML表格多行数据保存到Google Sheet
2026春节假期票务安排_2026春节放假购票指南
PHP高效扁平化嵌套数组:使用array_merge与数组解包操作符
c++中的std::basic_string的SSO优化_c++短字符串优化深度解析
html怎么在cmd下运行php文件_cmd运行html中php文件方法【教程】
AO3官方可用镜像 Archive of Our Own网页版最新入口
Spring Boot内嵌服务器与J*a EE全栈特性:选择与部署策略
QQ邮箱官方网页版登录 QQ邮箱个人邮箱快速访问
LocoySpider如何部署到云服务器_LocoySpider云部署的远程配置
《主播少女的秘密账号迷宫》首支宣传片
夸克AO3官网入口_AO3镜像网站2025推荐
Golang如何使用buffered channel提高性能_Golang buffered channel优化技巧
win11怎么查看应用耗电情况 Win11电池设置查看应用能耗排行榜【优化】
印象笔记如何设提醒任务防漏执行_印象笔记设提醒任务防漏执行【任务提醒】
冬*霸灯泡不亮怎么办_浴霸取暖灯一盏不亮的灯座清洁修复法
漫蛙2在线漫画入口 漫蛙正版漫画网页版直达
ArchiveofOurOwn小说阅读-ArchiveofOurOwn同人作品访问链接
Go Martini框架:动态服务解码后的图片内容
在J*a中如何在J*a中使用异常机制记录错误日志_异常日志实践经验
html两个JS只运行一个怎么办_让双JS在html中都运行方法【技巧】
AO3网页版合集入口 Archive of Our Own同人作品浏览指南
内存检查:在VS Code中调试C++时的内存视图
淘宝网网页版登录入口 淘宝官方网页版快捷登录
实现全屏滚动与导航点:专业教程
uc手机浏览器网页版入口 uc浏览器手机版便捷登录首页


2025-10-12
浏览次数:次
返回列表
ol" id="pnum" name="phone_number" oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*?)\..*/g, '$1');" maxlength="10" required>
</div>
</div>
<input type="submit" name="submit" disabled id="submitButton" value="Submit" class="btn btn-primary mr-2">
</div>
<script>
$(document).ready(function() {
$('#pnum').on('input', function(e) {
const value = e.target.value;
var regex = new RegExp("^[0-9]{10}$");
if (regex.test(value)) {
$('#submitButton').prop('disabled', false);
} else {
$('#submitButton').prop('disabled', true);
}
});
});
</script>
</body>
</html>