之前的一个项目的页面要获取insertCell进表格的当时的模块名 obj.data[i].module。
str = "<button type='button' class='btn btn-primary' name='" + obj.data[i].module + "' style='vertical-align: middle'>重启</button>";
rec.innerHTML = str;
然鹅,获取的时候从循环中取出的模块名始终是最后一个(要不就是第一个),后来找到一个办法:
//重启事件
var restart = document.getElementsByTagName("button");//按顺序获取添加的button
for (var k = 0; k < restart.length; k++) {
restart[k].k = k; //这个我还是有点懵
restart[k].onclick = function () { //第k个被点击
var remod = obj.data[this.k].module;
Restart(remod); //获取的模块传入restart
}
}
这个主题的重点是以假乱真。。。
因为有些情况下是不需要这个按钮的,今天进行更改。如果不设置按钮,获取模块的时候还有些顺序的问题,它获取的k,是按顺序,从1到N,不管你那一栏是不是有都算进去了。一开始我想的办法是内部排序,但不行。于是只能把按钮的样式改了。
比如说:
这是bootstrap的按钮样式。我们要的是没有边框,且无色的,不就是最后一个吗?
最后一个的源码:
<input type='button' class='btn btn-link' style='text-align: center;' value='无' />
它是个超链接形式,我们将它disabled,之后,文字的颜色其实是灰色的。
<input type='button' class='btn btn-link' style='text-align: center;color: black;' disabled value='无'>
只要再改一下style,设置颜色为黑色,就完成了。
看不出来吧???
(如果看官有不同想法建议,欢迎评论指正!)