2014-02-14 37 views
1

我有以下代码:传递参数

$(buttonID).on('click', onClickAddUpdate);

在按下按钮的ID这就要求onClickAddUpdate。问题是,我可以将参数传递给onClickAddUpdate吗?即:

$(buttonID).on('click', onClickAddUpdate(i));

其中idiv我要访问的ID。

其余代码的结构是这样的:

var onClickAddUpdate; 

onClickAddUpdate = function(){ 

/*add paragraph element to div tag */ 
} 

回答

0

当然,你可以用这种方式(看看JQuery API):

var onClickAddUpdate = function(e) { 
    console.log(e.data.i); 
} 

$(buttonID).on('click', {i: '1'}, onClickAddUpdate); 

this example测试。

另一种方法是:

var onClickAddUpdate = function(id) { 
    console.log(id); 
} 

$(buttonID).on('click', function() { 
    onClickAddUpdate(i); 
}); 

this example测试。

0

当然,你也可以做到这一点:

var onClickAddUpdate = function(e, id) { 
    console.log(id); 
} 

$(buttonID).on('click', function(e) { onClickAddUpdate(e, $(this).attr('id')) }); 
2

是的,你可以,

看到http://api.jquery.com/on/

将数据传递到处理程序

例子:

$(buttonID).on('click', {i: '1'}, onClickAddUpdate);