Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在同一函数中使用事件和变量_Javascript_Dom Events - Fatal编程技术网

Javascript 如何在同一函数中使用事件和变量

Javascript 如何在同一函数中使用事件和变量,javascript,dom-events,Javascript,Dom Events,功能编辑(id){ 让name=document.querySelector('#name'); 让price=document.querySelector(“#price”); name.value=products[id].name; price.value=产品[id]。价格; document.querySelector(“.update”).addEventListener('click',update('e',id)); } 功能更新(e,id){ e、 防止违约; 让name=do

功能编辑(id){
让name=document.querySelector('#name');
让price=document.querySelector(“#price”);
name.value=products[id].name;
price.value=产品[id]。价格;
document.querySelector(“.update”).addEventListener('click',update('e',id));
}
功能更新(e,id){
e、 防止违约;
让name=document.querySelector('#name');
让price=document.querySelector(“#price”);
产品[id].name=name.value;
产品[id]。价格=价格。价值;
showProduct();

}
您正在以字符串形式发送事件

更改此项:


function edit(id) {
    
    let name = document.querySelector('#name');
    let price = document.querySelector('#price');


    name.value = products[id].name;
    price.value = products[id].price;
    
    // change
    document.querySelector(".update").addEventListener('click', e => {
      update(e,id)
    });    
}


您正在以字符串形式发送事件

更改此项:


function edit(id) {
    
    let name = document.querySelector('#name');
    let price = document.querySelector('#price');


    name.value = products[id].name;
    price.value = products[id].price;
    
    // change
    document.querySelector(".update").addEventListener('click', e => {
      update(e,id)
    });    
}


我试过用“this”代替“e”。像这个addEventListener('click',update(this,id))
.addEventListener('click',e=>update(e,id))
'e'只是一个字符串,不是
事件
尝试使用“this”而不是“e”。像这个addEventListener('click',update(this,id))
.addEventListener('click',e=>update(e,id))
'e'只是一个字符串而不是
事件