如何用jQuery为表格后续所有行的文本框设置相同值?
解决任意文本框输入后同步后续内容的问题
原代码仅给text1绑定了事件,无法响应其他文本框的输入操作。要实现任意文本框输入后,自动同步其后续所有文本框内容的功能,可按以下方式修改:
修改后的代码
$(document).ready(function() { // 给所有ID以text开头的文本框绑定keyup事件 $('[id^="text"]').keyup(function() { // 提取当前文本框的序号数字 var currentIndex = parseInt(this.id.replace('text', ''), 10); // 循环同步后续所有文本框 for (var k = currentIndex + 1; k <= 15; k++) { $('#text' + k).val($(this).val()); } }); });
代码逻辑说明
- 使用属性选择器
[id^="text"],一次性选中所有ID以text开头的文本框,避免逐个绑定事件的冗余操作。 - 通过
this.id.replace('text', '')提取当前文本框ID中的数字部分,转换为整数后得到当前文本框的序号。 - 从当前序号的下一位开始,循环到第15个文本框,将每个后续文本框的值设置为当前输入框的内容,实现同步效果。
内容的提问来源于stack exchange,提问作者Aaditri
相关产品推荐
相关产品推荐

