`
chinacq
  • 浏览: 36585 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

JS循环添加事件

阅读更多
    对于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;

     好了,希望对大家有帮助。谢谢。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics