вызов методов onclick из других методов

0

Возможно ли иметь две функции Jquery, например, следующие

$('#id1').on('click', function(){
    //body
}


$('#id2').on('click', function(){
    //body
}

но иметь возможность называть тело

$('#id2').on('click', function(){} );

в

$('#id1').on('click', function(){} );
Теги:
function

4 ответа

3
Лучший ответ

Конечно, вы можете:

  1. Триггер click и вызвать функцию таким образом:

    $('#id2').click();
    
  2. Назовите функцию и вызовите ее напрямую:

    function myClickFn() {
        // ..
    }
    
    $('#id2').on('click', myClickFn);
    $('#id1').on('click', function () {
        myClickFn();
    });
    

Я бы настоятельно рекомендовал вариант № 2.

2

Вы можете вызвать trigger():

$("#id2").on('click', function() {
    $("#id1").trigger("click");
});

Это фактически вызовет событие click на этом id.

0

Да, каждая функция вызывает третью, обычную функцию:

$('#id1').on('click', function(){
    doCommon()
}


$('#id2').on('click', function(){
    doCommon()
}

function doCommon(){
    alert('here i am');
}
0

Попробуй это

$('#id1').on('click', function(){
    //body
    $('#id2').trigger('click');
}


$('#id2').on('click', function(){
    //body
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню