我想達到的參數傳遞給功能與事件處理程序。jQuery的 - JavaScript中,參數傳遞給函數與一起「事件」
我想要實現的是這樣的
$('#Form').submit(save(parameter));
function save(event, parameter){
event.preventDefault();
}
在哪種方式,我應該做的?
我想達到的參數傳遞給功能與事件處理程序。jQuery的 - JavaScript中,參數傳遞給函數與一起「事件」
我想要實現的是這樣的
$('#Form').submit(save(parameter));
function save(event, parameter){
event.preventDefault();
}
在哪種方式,我應該做的?
這是一個封閉
$('#Form').submit(function (event) { save(event, parameter); });
工作有兩種方法來實現這一目標。第一個是一個封閉:
$('#Form').submit(function (event) { save(event, parameter); });
第二個是綁定功能:
$('#Form').submit(save.bind(null, parameter));
function save(parameter, event){
event.preventDefault();
}
請注意,您需要重新排序的「保存」這裏的參數。 綁定函數的第一個參數是save函數中的「this」的值。這裏是「空」,意思是「不變」。
太好了! – Makis
好吧,它像一個魅力。你能向我解釋需要關閉的原因嗎?我是Js新手! – Makis
因爲您需要對函數和方式的引用,所以您正在執行該函數並將其分配給提交事件。請看看http://stackoverflow.com/questions/111102/how-do-javascript-closures-work – epascarello
非常感謝你,先生! – Makis