小弟用javascript为table动态的增加了行 列 以及嵌套控件(都是用js临时创建的)
每一行有五列 前三列嵌入的是input文本框 第四列嵌入select选择框 最后一列是一个链接按钮 文本为"保存"或"修改"(视状态而定) 现在我在文本框中输入值后点击保存按钮 此时保存按钮的文本变为"修改" 利用下面得代码
tbody.rows[0].cells[2].innerHTML=tbody.rows[0].cells[2].firstChild.value;
this.innerText="修改";
保存之后呢 文本框不见了 单元格内的文本就是之前输入的值 但是问题来了:
当我点击"修改" 想继续编辑这行文本时 死活找不到之前的input输入框了呢 是被隐藏了 还是执行上边的代码后压根就不存在了???反正不知道跑哪儿去了 我想的是 如果能再次找到这些input输入框 就可以轻松的再次完成编辑 但就是不行啊 请问是怎么回事
每一行有五列 前三列嵌入的是input文本框 第四列嵌入select选择框 最后一列是一个链接按钮 文本为"保存"或"修改"(视状态而定) 现在我在文本框中输入值后点击保存按钮 此时保存按钮的文本变为"修改" 利用下面得代码
tbody.rows[0].cells[2].innerHTML=tbody.rows[0].cells[2].firstChild.value;
this.innerText="修改";
保存之后呢 文本框不见了 单元格内的文本就是之前输入的值 但是问题来了:
当我点击"修改" 想继续编辑这行文本时 死活找不到之前的input输入框了呢 是被隐藏了 还是执行上边的代码后压根就不存在了???反正不知道跑哪儿去了 我想的是 如果能再次找到这些input输入框 就可以轻松的再次完成编辑 但就是不行啊 请问是怎么回事
再给这些东西加上id试试
这句改一下,
tbody.rows[0].cells[2].firstChild就是保存之前的那个输入框,保存后第1行第2个单元格的内容被输入框的值替换,就没有输入框了,被REMOVER掉了。
可以
tbody.rows[0].cells[2].firstChild.style.display = "none";
tbody.rows[0].cells[2].innerHTML +=tbody.rows[0].cells[2].firstChild.value;
修改的时候直接用
tbody.rows[0].cells[2].innerHTML = tbody.rows[0].cells[2].firstChild;
tbody.rows[0].cells[2].firstChild.style.display="";
应该是可以的,你试一下。
但是这种方法对于select控件的样式不好修改 所以为难若果采用之前的方法....innerHTML = .....value 又找不到input输入框了 难缠啊 望高手指点下