对于JS循环添加事件,就和网上遇到情况一样,输出的值一直都是那个循环的最大i值。如何添加循环事件呢?我也是在无意中突然想到的,以下代码供大家参考,希望对你们的编程有帮助。
for(var t = 0;t < isCheckName.length;t++){
Goodsid[t] = document.getElementById("Goodsid"+t);
Goods_id[t] = document.getElementById("Goods_id"+t);
Goods_name[t] = document.getElementById("Goods_name"+t);
provider[t] = document.getElementById("provider"+t);
Produce_place[t] = document.getElementById("Produce_place"+t);
Size[t] = document.getElementById("Size"+t);
Package[t] = document.getElementById("Package"+t);
Product_code[t] = document.getElementById("Product_code"+t);
Promit_code[t] = document.getElementById("Promit_code"+t);
Description[t] = document.getElementById("Description"+t);
Price[t] = document.getElementById("Price"+t);
Available[t] = document.getElementById("Available"+t);
isCheck[t] = document.getElementById("isCheck"+t);
}
var importGoodsListTr = new Array();//插入行
alert(new Date());
for( var n = 0;n<isCheck.length;n++){
isCheck[n].value=n;
isCheck[n].onclick=function(){
var i = this.value; if(isCheck[i].checked == true){
importGoodsListTr[i]= importGoodsList.insertRow(importGoodsList.rowIndex+1);
var importGoodsListTd0=importGoodsListTr[i].insertCell(0);
importGoodsListTd0.innerHTML=Goodsid[i].innerHTML;
var importGoodsListTd1=importGoodsListTr[i].insertCell(1);
importGoodsListTd1.innerHTML=Goods_id[i].innerHTML;
var importGoodsListTd2=importGoodsListTr[i].insertCell(2);
importGoodsListTd2.innerHTML=Goods_name[i].innerHTML;
var importGoodsListTd3=importGoodsListTr[i].insertCell(3);
importGoodsListTd3.innerHTML=provider[i].innerHTML;
var importGoodsListTd4=importGoodsListTr[i].insertCell(4);
importGoodsListTd4.innerHTML=Produce_place[i].innerHTML;
var importGoodsListTd5=importGoodsListTr[i].insertCell(5);
importGoodsListTd5.innerHTML=Size[i].innerHTML;
var importGoodsListTd6=importGoodsListTr[i].insertCell(6);
importGoodsListTd6.innerHTML=Package[i].innerHTML;
var importGoodsListTd7=importGoodsListTr[i].insertCell(7);
importGoodsListTd7.innerHTML=Product_code[i].innerHTML;
var importGoodsListTd8=importGoodsListTr[i].insertCell(8);
importGoodsListTd8.innerHTML=Promit_code[i].innerHTML;
var importGoodsListTd9=importGoodsListTr[i].insertCell(9);
importGoodsListTd9.innerHTML=Description[i].innerHTML;
var importGoodsListTd10=importGoodsListTr[i].insertCell(10);
importGoodsListTd10.innerHTML=Price[i].innerHTML;
var importGoodsListTd11=importGoodsListTr[i].insertCell(11);
importGoodsListTd11.innerHTML=Available[i].innerHTML;
}else{
importGoodsList.deleteRow(importGoodsList.rowIndex+1);
}
}
}
大家注意红色字体的内容:将需要循环添加事件的对象的value设定为循环变量n,此时如何操作其它的数组对象呢?重点的来了,那就是设置一个i变量:
var i = this.value;这就得到了原来循环变量n的值,你现在就可以操作其它的数组对象了,比如:
var importGoodsListTd0=importGoodsListTr[i].insertCell(0);
importGoodsListTd0.innerHTML=Goodsid[i].innerHTML;。
好了,希望对大家有帮助。谢谢。
分享到:
相关推荐
主要介绍了使用javascript生成动态表格并为每个单元格添加单击事件,需要的朋友可以参考下
本文实例讲述了js实现为a标签添加事件的方法。分享给大家供大家参考,具体如下: 以示例说明: 实现效果:循环为带有ml-praise样式类的a标签添加事件,并且在点击a标签后,相应的数量增加1。 Html结构如下所示: ...
使用了一些方法,给文档中的元素添加事件,尤其是某些同类元素,不需要在每个元素里添加事件,通过js一个循环就全部添加了,节省了代码量
web前端的朋友们,经常会遇到给由后台返回的数据遍历生成的DOM绑定事件,但是总是绑定不上,那是因为把事件直接绑定到了动态生成的DOM上了,正确的方式是利用事件冒泡给其父元素绑定,这样才能解决问题的哦!
主要介绍了js循环li添加点击事件 (闭包的应用)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
wex5通过js动态加载dom节点并给节点添加不同的点击事件,循环加载点击事件,通过点击事件出发不同的功能
普通事件中,如果对某一个元素添加多个点击事件,那么,最后一个将会把前面的所有点击事件全部覆盖,只能执行最后一个点击事件;而在绑定事件中,则不一样,在同一个元素上,即使绑定再多的点击事件,都会全部执行。...
jQuery动态添加节点循环流程图表代码
自己写了一个为元素添加事件的方法,并封装到对象中。 说明: id : 目标元素的ID type: 事件的类型,注意的是不能加on fn:事件处理程序 isBubble :规定事件流 代码: var bindEvent = { 'add':function(id,type,fn...
尽管JavaScript是单线程的,但通过尽可能将操作放到系统内核执行,事件循环允许Node.js执行非阻塞I/O操作。 由于现代大多数内核都是多线程的,因此它们可以处理在后台执行的多个操作。 当其中一个操作完成时,内核会...
主要介绍了JavaScript给每一个li节点绑定点击事件的实现方法,包括js循环给li绑定参数不同的点击事件,需要的朋友可以参考下
小程序的一个小白
我们在日常开发中有时会通过js创建一些元素,但是如果使用原始的for循环给创建的节点添加事件的方法往往行不通: <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8> <title&...
可以动态循环显示select中的值,项目需要自己做的网上找资料没找到,这个很适合你
主要实现一个功能,当数据从数据库读出时,如果你想给循环读出的数据中的第五条、十条、十五条等...的条目添加一个样式的话,这个JQ就能帮你实现,虽然是很简单的JQ。
antd+vue实现动态验证循环属性表单的思路 ...一个是可动态添加的循环表单form,另一个为普通表单dateForm html <a-form :form="form" @keyup.enter.native='searchQuery'> <div class="dynamic-wrap"> (item,
主要介绍了JS动态添加Table的TR,TD实现方法,涉及js针对Table中TR、TD节点的操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下