2015-05-21 51 views

回答

2

这是一个封闭

$('#Form').submit(function (event) { save(event, parameter); }); 
+0

好吧,它像一个魅力。你能向我解释需要关闭的原因吗?我是Js新手! – Makis

+0

因为您需要对函数和方式的引用,所以您正在执行该函数并将其分配给提交事件。请看看http://stackoverflow.com/questions/111102/how-do-javascript-closures-work – epascarello

+0

非常感谢你,先生! – Makis

1

工作有两种方法来实现这一目标。第一个是一个封闭:

$('#Form').submit(function (event) { save(event, parameter); }); 

第二个是绑定功能:

$('#Form').submit(save.bind(null, parameter)); 

function save(parameter, event){ 
    event.preventDefault(); 
} 

请注意,您需要重新排序的“保存”这里的参数。 绑定函数的第一个参数是save函数中的“this”的值。这里是“空”,意思是“不变”。

+0

太好了! – Makis