从函数中分离preventDefault()

时间:2013-04-05 09:49:44

标签: jquery

而不是像这样的东西

$('#submitbutton').click(function(e) {
    e.preventDefault(); //to avoid the submit button to reload the page and go page to page one.
/* computing dimensions */
});

我想把我的功能放在其他地方,比如:

$('#submitbutton').click(computeUserDimensions);

function computeUserDimensions(){
/* computing dimensions */
}

但是我不知道在哪里放preventDefault来提供点击(在提交按钮上)以转到另一页。

你能帮我搞清楚吗?

由于

3 个答案:

答案 0 :(得分:5)

将参数event添加到您的函数中,它将由jQuery隐式传递。

$('#submitbutton').click(computeUserDimensions);

function computeUserDimensions(event){
    /* computing dimensions */
    event.preventDefault();
}

答案 1 :(得分:2)

您可以将函数调用更改为处理单击并调用子函数的匿名函数。

$('#submitbutton').click(function(e) {e.preventDefault(); computeUserDimensions();});

function computeUserDimensions(){
/* computing dimensions */
}

答案 2 :(得分:1)

function computeUserDimensions(e){

   var evt = e ? e:window.event;
   if (evt.preventDefault) evt.preventDefault();

   /* computing dimensions */

}