本文讲解如何通过 jQuery 正确遍历并重置一组 input 元素的 value 为连续递增数字(如 1、2、3…),纠正初学者误用 .closest() 导致无法匹配目标元素的常见错误。
本文讲解如何通过 jquery 正确遍历并重置一组 input 元素的 value 为连续递增数字(如 1、2、3…),纠正初学者误用 `.closest()` 导致无法匹配目标元素的常见错误。
在 JavaScript(尤其是 jQuery)初学实践中,一个典型误区是混淆 DOM 遍历方法的语义。例如,问题中试图用 $(this).closest('.number') 在点击按钮时更新所有 .number 输入框的值,但 .closest() 的作用是向上查找最近的祖先元素——而 .number 输入框与 .btn 按钮在 DOM 中是同级兄弟节点,并非父子关系,因此该选择器始终返回空集合,循环无效。
✅ 正确做法是:直接选取所有目标元素,再按索引顺序赋值。
以下为推荐实现方案:
动态WEB网站中的PHP和MySQL详细反映实际程序的需求,仔细地探讨外部数据的验证(例如信用卡卡号的格式)、用户登录以及如何使用模板建立网页的标准外观。动态WEB网站中的PHP和MySQL的内容不仅仅是这些。书中还提到如何串联JavaScript与PHP让用户操作时更快、更方便。还有正确处理用户输入错误的方法,让网站看起来更专业。另外还引入大量来自PEAR外挂函数库的强大功能,对常用的、强大的包
$('.btn').on('click', function() {
$('.number').each(function(index) {
$(this).val(index + 1); // index 从 0 开始,+1 后变为 1, 2, 3...
});
});这段代码简洁高效:
立即学习“Java免费学习笔记(深入)”;
- $('.number') 精准获取全部带 class="number" 的 元素(按 HTML 文档流顺序);
- .each() 提供原生索引 index(0-based),无需手动维护计数器 i;
- $(this) 指向当前遍历的 input 元素,调用 .val() 即可安全更新其值。
? 注意事项:
- DOM 加载时机:确保该事件绑定代码在 DOM 就绪后执行。推荐包裹在 $(document).ready() 或将其置于









