work-bug:记一次表格中按钮失效的重大问题
1.现象
点击退回按钮不现实弹窗,只有第一行的按钮会显示弹窗。也就是只有第一行的按钮触发了点击事件。相信读到这里的小伙伴都能想到问题了。
2.原因
-
着急赶需求,直接在按钮上加了id,js中通过id选择器来给按钮绑定点击事件。这就犯了一个最最基本的错误。
-
因为这是一个列表,每一条记录是循环产生的,也就说会产生N多个相同的id,而id选择器是具有唯一性的,这就解释了为什么只有第一行的按钮的点击事件生效了,也侧面的说明id选择器是从整个dom从上往下进行查找id的。淦 这么基础的东西怎么能忘了呢。。。。
3.解决方法
- 既然需要使按钮都生效,其他方式不谈,最简单的就是使用class选择器,给同类按钮加上一个相同的class,使用class选择器就行。