PHP循环生成表格时如何仅启用下拉框修改所在行的保存按钮
解决方案
问题原因
原有代码中的$('button')选择器会匹配页面内所有按钮元素,因此任意一行的下拉框触发change事件时,所有行的保存按钮都会被启用。
修复后的JS代码
$(document).ready(function() { $('select').on('change', function() { // 定位当前触发事件的下拉框所在的行,再查找该行内的提交按钮 $(this).closest('tr').find('button[type="submit"]').attr('disabled', false); }); });
额外优化建议
- 移除重复id属性:id在单页面内必须唯一,你当前循环生成的所有下拉框都用了相同的
id="smt2"、所有按钮都用了相同的id="submit",建议删除重复id,或者动态拼接唯一id(例如id="smt_<?= $test['id'] ?>") - 修正按钮闭合标签:现有代码中按钮的闭合标签误写为
</a>,需要改为</button>,避免出现HTML解析异常。
内容的提问来源于stack exchange,提问作者azrin
相关产品推荐
相关产品推荐

