2015-10-17 16 views
0

我有以下代码将一个事件侦听器附加到表单提交。我想调用的函数是'回调'。 这里是东西:我不明白我应该如何参数传递给函数纯Javascript - 在表单中执行回调提交eventlistener

if(form.addEventListener){ 
    form.addEventListener('submit', interrupt, false); 
}else if(form.attachEvent){ 
    form.attachEvent('onsubmit', interrupt);    
} 

function interrupt(event){ 
    //deal with form submission here 
} 

//OR (???) 

interrupt = function(event){ 
    //deal with form submission here 
} 

我知道这个问题似乎是基本的,但我真不(它应该是“事件”的说法?)不明白它应该如何工作...

+0

您不必调用事件侦听器。浏览器为你做,它以'event'作为参数。 – Oriol

+0

用第一个函数中断(事件){'并阅读[Function declaration hoisting](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function) – Anonymous0day

回答

0

运行此示例并查找浏览器的控制台。绑定动态事件时,事件被注入。为此,函数调用必须接收的第一个参数

var input = document.getElementById('ipTest'); 
 

 
if(input.addEventListener){ 
 
    input.addEventListener('click', interrupt, false); 
 
}else if(input.attachEvent){ 
 
    input.attachEvent('onclick', interrupt);    
 
} 
 

 
function interrupt(event){ 
 
    console.log("Event: " + event); 
 
}
<input type="button" value="Test" id="ipTest"/>