Javascript 如何克隆具有唯一事件的表的不同行

Javascript 如何克隆具有唯一事件的表的不同行,javascript,Javascript,制作一个订购应用程序。有一个div,其中有一个包含所有产品的表,每个产品都有一个价格和一个选择按钮。第二个div包含选定的产品。因此,我克隆了所选的产品,将其放在第二个div中。它会运行,但我必须为每个产品创建一个事件,并且我希望使用button类名创建一个唯一的函数来执行此操作 我试图创建一个for(),但没有结果,但我是一个js初学者,语法有问题 HTML 使用以下javascript代码: add = function(e) { choices = docume

制作一个订购应用程序。有一个div,其中有一个包含所有产品的表,每个产品都有一个价格和一个选择按钮。第二个div包含选定的产品。因此,我克隆了所选的产品,将其放在第二个div中。它会运行,但我必须为每个产品创建一个事件,并且我希望使用button类名创建一个唯一的函数来执行此操作

我试图创建一个for(),但没有结果,但我是一个js初学者,语法有问题

HTML


使用以下javascript代码:

add = function(e)
      {
        choices = document.getElementById('products_cart');
        choices.innerHTML=choices.innerHTML+e.target.parentNode.parentNode.innerHTML;

      }
      products = document.querySelectorAll('.item_button');

      for(i=0;i<products.length;i++)
         products[i].addEventListener('click',add,false);
add=函数(e)
{
选项=document.getElementById('products_cart');
choices.innerHTML=choices.innerHTML+e.target.parentNode.parentNode.innerHTML;
}
products=document.querySelectorAll('.item_按钮');

对于(i=0;i使用以下javascript代码:

add = function(e)
      {
        choices = document.getElementById('products_cart');
        choices.innerHTML=choices.innerHTML+e.target.parentNode.parentNode.innerHTML;

      }
      products = document.querySelectorAll('.item_button');

      for(i=0;i<products.length;i++)
         products[i].addEventListener('click',add,false);
add=函数(e)
{
选项=document.getElementById('products_cart');
choices.innerHTML=choices.innerHTML+e.target.parentNode.parentNode.innerHTML;
}
products=document.querySelectorAll('.item_按钮');

对于(i=0;i,考虑到您可以使用jQuery:

let basket=document.getElementById(“产品\购物车”)
$('item_button')。在('click',函数(e)上{
设target=$(e.currentTarget);
让clone=target.parents('tr')[0]。cloneNode(true);
子代(克隆);
})
使用纯JS,您可以执行以下操作:

let basket=document.getElementById(“产品\购物车”)
let buttons=document.queryselectoral('.item_button');
用于(按钮中的按钮){
按钮。addEventListener('单击',克隆行);
}
功能克隆线(e){
设td=e.target.parentNode;
设tr=td.parentNode;
设clone=tr.cloneNode(true);
子代(克隆);
}

考虑到您可以使用jQuery:

let basket=document.getElementById(“产品\购物车”)
$('item_button')。在('click',函数(e)上{
设target=$(e.currentTarget);
让clone=target.parents('tr')[0]。cloneNode(true);
子代(克隆);
})
使用纯JS,您可以执行以下操作:

let basket=document.getElementById(“产品\购物车”)
let buttons=document.queryselectoral('.item_button');
用于(按钮中的按钮){
按钮。addEventListener('单击',克隆行);
}
功能克隆线(e){
设td=e.target.parentNode;
设tr=td.parentNode;
设clone=tr.cloneNode(true);
子代(克隆);
}
add = function(e)
      {
        choices = document.getElementById('products_cart');
        choices.innerHTML=choices.innerHTML+e.target.parentNode.parentNode.innerHTML;

      }
      products = document.querySelectorAll('.item_button');

      for(i=0;i<products.length;i++)
         products[i].addEventListener('click',add,false);