Подтвердить что ты не робот

Добавление события onClick динамически с помощью jQuery

Из-за использования плагина я не могу добавить атрибут "onClick" к входам формы HTML, как обычно. Плагин обрабатывает часть форм на моем сайте, и он не дает возможности сделать это автоматически.

В основном у меня есть этот вход:

<input type="text" id="bfCaptchaEntry" name="bfCaptchaEntry" style="">

Я хочу добавить onClick к нему с помощью jQuery onload, чтобы он выглядел следующим образом:

<input onClick="myfunction()" type="text" id="bfCaptchaEntry" name="bfCaptchaEntry" style="">

Как мне это сделать?

Я знаю, что это может быть не стандартная практика, но кажется, что это самый простой вариант в моей ситуации.

Я новичок в jQuery, поэтому любая помощь очень ценится.

4b9b3361

Ответ 1

Вы можете использовать событие click и вызвать свою функцию или переместить логику в обработчик:

$("#bfCaptchaEntry").click(function(){ myFunction(); });

Вы можете использовать событие click и назначить функцию в качестве обработчика:

$("#bfCaptchaEntry").click(myFunction);

.click()

Привязать обработчик события к событию JavaScript "click" или вызвать это событие для элемента.

http://api.jquery.com/click/


Вы можете использовать событие on, связанное с "click", и вызвать вашу функцию или переместить вашу логику в обработчик:

$("#bfCaptchaEntry").on("click", function(){ myFunction(); });

Вы можете использовать событие on, привязанное к "click", и установить вашу функцию как обработчик:

$("#bfCaptchaEntry").on("click", myFunction);

.on()

Прикрепите функцию обработчика событий для одного или нескольких событий к выбранных элементов.

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

Ответ 2

Попробуйте приблизительный подход,

$('#bfCaptchaEntry').on('click', myfunction);

или в случае, если jQuery не является абсолютной необходимостью, попробуйте ниже,

document.getElementById('bfCaptchaEntry').onclick = myfunction;

Однако вышеупомянутый метод имеет несколько недостатков, поскольку он устанавливает onclick как свойство, а не регистрируется как обработчик...

Подробнее об этом сообщении fooobar.com/questions/11898/...

Ответ 3

попробуйте этот подход, если вы знаете свое имя клиента объекта (не важно, что это Button или TextBox)

$('#ButtonName').removeAttr('onclick');
$('#ButtonName').attr('onClick', 'FunctionName(this);');

попробуйте это, если вы хотите добавить событие onClick к серверному объекту с помощью JQuery

$('#' + '<%= ButtonName.ClientID %>').removeAttr('onclick');
$('#' + '<%= ButtonName.ClientID %>').attr('onClick', 'FunctionName(this);');

Ответ 4

$("#bfCaptchaEntry").click(function(){
    myFunction();
});

Ответ 5

Или вы можете использовать функцию стрелки для ее определения:

$(document).ready(() => {
  $('#bfCaptchaEntry').click(()=>{

  });
});

Для лучшей поддержки браузера:

$(document).ready(function() {
  $('#bfCaptchaEntry').click(()=>{

  });
});