这段代码是做动态生成行后删除行的,
function modify_for_delete(num){
var table = document.getElementById("tb");
var Count = table.rows.length;
var i=num*1
alert("当前的总行数"+Count);
alert("当前选择行"+num);
for(i;i<Count*1;i++){
alert("开始修改行"+i);
var next=i+1; //下一行行号
var next_na = "name"+next; //下一行name属性
var next_num = "num"+next; //下一行num属性
var next_unit = "unit"+next; //下一行unit属性
var next_id = "id"+next; //下一行id属性
var dex=i
var now_na ="name"+dex;
var now_num ="num"+dex;
var now_unit ="unit"+dex;
var now_num ="id"+dex;
alert(next_na+next_na+next_na+next_na);
//注释 一下四行话出现bug 修改稿
document.getElementById(next_na).value =now_na;
document.getElementById(next_num).value =now_num;
document.getElementById(next_unit).value =now_unit;
document.getElementById(next_id).value =now_id;
}
}
现在出现了个问题 如果没有document.getElementById(next_na).value =now_na;
document.getElementById(next_num).value =now_num;
document.getElementById(next_unit).value =now_unit;
document.getElementById(next_id).value =now_id;
该段代码可以执行预定次数 但是如果有了上面那段只有执行一次 求助。我没什么分希望好心人帮忙 在线等。。
function modify_for_delete(num){
var table = document.getElementById("tb");
var Count = table.rows.length;
var i=num*1
alert("当前的总行数"+Count);
alert("当前选择行"+num);
for(i;i<Count*1;i++){
alert("开始修改行"+i);
var next=i+1; //下一行行号
var next_na = "name"+next; //下一行name属性
var next_num = "num"+next; //下一行num属性
var next_unit = "unit"+next; //下一行unit属性
var next_id = "id"+next; //下一行id属性
var dex=i
var now_na ="name"+dex;
var now_num ="num"+dex;
var now_unit ="unit"+dex;
var now_num ="id"+dex;
alert(next_na+next_na+next_na+next_na);
//注释 一下四行话出现bug 修改稿
document.getElementById(next_na).value =now_na;
document.getElementById(next_num).value =now_num;
document.getElementById(next_unit).value =now_unit;
document.getElementById(next_id).value =now_id;
}
}
现在出现了个问题 如果没有document.getElementById(next_na).value =now_na;
document.getElementById(next_num).value =now_num;
document.getElementById(next_unit).value =now_unit;
document.getElementById(next_id).value =now_id;
该段代码可以执行预定次数 但是如果有了上面那段只有执行一次 求助。我没什么分希望好心人帮忙 在线等。。
解决方案 »
- 左侧的焦点图效果
- 如何让一个没有width属性的图片自适应宽度!
- if...if...和if...else if区别?
- 我原创的javascript画画板,呵呵娱乐一下而已。(14岁小孩作品,莫见笑。)
- javascript,在指定位置添加xml节点
- 求助:鼠标放在单元格里的文字链接上时如何改变单元格背景图,离开时又恢复原来背景图
- ajax如何实现webmap?
- 怎样用JavaScript清除IE的历史记录(给分88)在线等
- 各位兄弟看看小弟做的OA吧!!!多提意见,多交流
- 请问:event.fromElement和event.toElement大家有没有用过,怎么用??
- input file框动态生存无法提交!!求教高手!!
- 函数里的参数带有单引号怎么办
document.getElementById(next_na) is null
不用四行,就一行也终止
赋值前判断下
document.getElementById(next_na) is null
不用四行,就一行也终止
赋值前判断下
document.getElementById(next_na) is null不是为空
我在动态生成行时都赋值一个id给他 格式是字符串加行号
比如这个
document.getElementById(next_na)
你只在动态生成时给了id,但删除时没注意给未删除的控件id重新赋值。例如:
生成了三行,id分别是:
aa0
aa1
aa2当你把aa0这行删除后,剩下了两行:
aa1
aa2此时,如果你继续添加新行后再删除就容易出问题了。
所以需要做个循环,将剩下的两行id重新赋值为:
aa0
aa1
var table = document.getElementById("tb");
var Count = table.rows.length;
var i=num*1
//alert("当前的总行数"+Count);
//alert("当前选择行"+num);
alert(Count);
for(i;i<Count*1;i++){
alert("开始第"+i+"次赋值");
var next=i+1; //下一行行号
var next_na = "name"+next; //下一行name属性
var next_num = "num"+next; //下一行num属性
var next_unit = "unit"+next; //下一行unit属性
var next_id = "id"+next; //下一行id属性
var dex=i
var now_na ="name"+dex;
var now_num ="num"+dex;
var now_unit ="unit"+dex;
var now_num ="id"+dex;
alert("开始修改行"+i);
alert(document.getElementById(next_na));
//alert(next_na+next_na+next_na+next_na);
//注释 一下四行话出现bug 修改稿
document.getElementById(next_na).id =now_na;
//alert(document.getElementById(next_na));
document.getElementById(next_num).id =now_num;
document.getElementById(next_unit).id =now_unit;
//document.getElementById(next_id).id =now_id;
}
重新写下
现在是如果只执行document.getElementById(next_na).id =now_na;时是可以实现修改 但是如果同时要对一行中的四个input同时修改就会只执行一次