我如何组合两个触发相同 class 名称的函数?
How can I combine two functions that fire on the same class name?
我有一个 function
当我点击我的 jquery 数据表项目中的项目时触发。
$('.table tbody').on( 'click', '.item', function (e) {
alert("clicked");
});
我在数据表外有一个具有相同 class 的项目,适用于此 function
:
$('.item').on( 'click', function (e) {
alert("clicked");
});
function
里面的内容是一样的。有没有办法把这两个功能合二为一?
你可以先创建一个函数
const func = () => {
alert("clicked")
};
并在两个事件侦听器中执行此操作
$('.table tbody').on( 'click', '.item', func);
$('.item').on( 'click', func);
更新:
如果你想在函数内部处理事件,那么你也可以使用箭头函数。
const func = (e, el) => {
e.preventDefault()
alert($(el).attr("data-id"));
};
$('.table tbody').on( 'click', '.item', function(e){
func(e, this);
});
$('.item').on( 'click',function(e){
func(e, this);
});
我有一个 function
当我点击我的 jquery 数据表项目中的项目时触发。
$('.table tbody').on( 'click', '.item', function (e) {
alert("clicked");
});
我在数据表外有一个具有相同 class 的项目,适用于此 function
:
$('.item').on( 'click', function (e) {
alert("clicked");
});
function
里面的内容是一样的。有没有办法把这两个功能合二为一?
你可以先创建一个函数
const func = () => {
alert("clicked")
};
并在两个事件侦听器中执行此操作
$('.table tbody').on( 'click', '.item', func);
$('.item').on( 'click', func);
更新:
如果你想在函数内部处理事件,那么你也可以使用箭头函数。
const func = (e, el) => {
e.preventDefault()
alert($(el).attr("data-id"));
};
$('.table tbody').on( 'click', '.item', function(e){
func(e, this);
});
$('.item').on( 'click',function(e){
func(e, this);
});