Trigger change jquery не работает

на jQuery.триггер(‘Нажмите’) не работает

кажется, что я просто не могу понять триггер jQuery (‘click’)

11 ответов

вам нужно использовать jQuery(‘#bar’)[0].click(); для имитации щелчка мыши по фактическому элементу DOM (не объект jQuery), вместо использования .trigger() метод jQuery.

Примечание: DOM Уровень 2 .click() не работает некоторые элементы в Safari. Вам нужно будет использовать обходной путь.

это поведение JQuery. Я не уверен, почему он работает таким образом, он только запускает функцию onClick по ссылке.

вам просто нужно положить небольшое событие тайм-аута, прежде чем делать .click() вот так:

может быть полезно:

код, вызывающий триггер, должен идти после вызывается событие.

например, у меня есть код, который я хочу выполнить при изменении значения #expense_tickets, а также при перезагрузке страницы

в jQuery .trigger(‘click’); вызовет только событие для запуска этого события, оно также не вызовет действие браузера по умолчанию.

вы можете имитировать ту же функциональность со следующим JavaScript:

попробуйте это работает для меня:

Я попробовал два лучших ответа, это не сработало для меня, пока я не удалил «display:none» из моих элементов ввода файла. Затем я вернулся к прежней теме .trigger () также работал в safari для windows.

поэтому заключение не используйте display: none; чтобы скрыть ввод файла, вы можете использовать opacity:0 вместо этого.

технически не ответ на это, но хорошее использование принятого ответа (https://stackoverflow.com/a/20928975/82028) для создания кнопок next и prev для вкладок в полях jQuery ACF:

вы не можете имитировать событие click с помощью javascript. в jQuery .trigger() функция запускает только событие с именем «click» на элементе, который вы можете захватить с помощью .on() метод jQuery.

Источник

Trigger change() event when setting ‘s value with val() function

What is the easiest and best way to trigger change event when setting the value of select element.

I’ve expected that executing the following code

would result in triggering the change event, which i think is pretty logic thing to be done. Right?

Well, it isn’t the case. You need to triger change() event by doing this

but i’m looking for some solution which would trigger change event as soon as select’s value is changed by some javascript code.

5 Answers 5

I had a very similar issue and I’m not quite sure what you’re having a problem with, as your suggested code worked great for me. It immediately (a requirement of yours) triggers the following change code.

Then I take the value from the database (this is used on a form for both new input and editing existing records), set it as the selected value, and add the piece I was missing to trigger the above code, «.change()».

So that if the existing value from the database is ‘N’, it immediately hides the secondary input field in my form.

One thing that I found out (the hard way), is that you should have

defined BEFORE you are using

As you probably know setting the value of the select doesn’t trigger the change() event, if you’re looking for an event that is fired when an element’s value has been changed through JS there isn’t one.

If you really want to do this I guess the only way is to write a function that checks the DOM on an interval and tracks changed values, but definitely don’t do this unless you must (not sure why you ever would need to)

Added this solution:
Another possible solution would be to create your own .val() wrapper function and have it trigger a custom event after setting the value through .val() , then when you use your .val() wrapper to set the value of a it will trigger your custom event which you can trap and handle.

Be sure to return this , so it is chainable in jQuery fashion

Источник

jQuery. триггер («change») не работает

Я не могу заставить .trigger(«change») работать. Кто-нибудь знает почему?

6 ответов

У меня есть набор переключателей под названием pick_up_point, и у меня есть обработчик изменений для обнаружения проверяемого переключателя. В обработчике изменений я вызываю функцию clearFields(), которая в основном очищает поля ввода. function clearFields() < $(#Enquiry_start_point).val();.

При программном запуске события изменения в Jquery после обновления значения вы можете сделать следующее $(input).val(A).change(); или $(input).val(A).trigger(change); Есть ли причина использовать одно над другим? Есть ли ситуации, в которых это более подходит, чем в других?

Обработчик событий изменения должен быть определен перед вызовом .trigger(‘change’) или .change()

Ниже приведены 2 сценария.

Сценарий 1: где событие изменения вызывается до его определения.

Сценарий 2: где перед вызовом определяется обработчик событий изменения

Для меня проблема была исправлена, когда я использую scenario2. Надеюсь, это поможет!!

Иногда использование триггера не требуется:

Вот рабочая версия, использующая синтаксис идентификатора:

можете ли вы, пожалуйста, проверить данную ссылку Демо

Jquery Код

Результат :

Это пожарная тревога

Удалите id= из всех селекторов и замените его на #selected id

Событие .change() ожидает, пока поле ввода не потеряет фокус, поэтому оно не будет запущено до того, как вы щелкнете или закроете вкладку из поля.

Таким образом, вы можете просто добавить событие .blur() после события .change() , как это:

Или вы можете использовать другое событие вместо .change() , например .keyup() , .paste() и т. Д.

Я работаю над темой WordPress WooCommerce, но столкнулся с проблемой.. Я сделал кнопки увеличения количества, которые работают, но после события щелчка я хочу вызвать кнопку Обновить корзину, но кнопка отключена на WooCommerce, и для этого необходимо событие изменения в поле ввода количества. Я.

У меня есть три флажка, которые я хочу сделать взаимоисключающими. Я написал следующий код: window.jQuery && jQuery(window.parent.document).ready(function() < $('#id1,#id2,#id3').live('change', function()< if ($this.prop('checked', true)) $('#id1,#id2,#id3').not(this).prop('checked'.

попробуйте это , это должно сработать

Похожие вопросы:

Получил этот кусок кода, который отлично работает. Однако триггер .trigger(‘change’) не работает. $(function () < $('form').each(function () < var form = $(this); form.find('.cbox1').change(function.

У меня есть форма с У меня есть несколько текстовых входов и выпадающий список выбора. Я использую код jquery: $(‘form#new’).change(function()< alert('this code works'); >); Но функция.

Возможный Дубликат : jquery триггер-‘change’ функция У меня есть набор переключателей под названием pick_up_point, и у меня есть обработчик изменений для обнаружения проверяемого.

У меня есть набор переключателей под названием pick_up_point, и у меня есть обработчик изменений для обнаружения проверяемого переключателя. В обработчике изменений я вызываю функцию clearFields().

При программном запуске события изменения в Jquery после обновления значения вы можете сделать следующее $(input).val(A).change(); или $(input).val(A).trigger(change); Есть ли причина использовать.

Я работаю над темой WordPress WooCommerce, но столкнулся с проблемой.. Я сделал кнопки увеличения количества, которые работают, но после события щелчка я хочу вызвать кнопку Обновить корзину, но.

У меня есть три флажка, которые я хочу сделать взаимоисключающими. Я написал следующий код: window.jQuery && jQuery(window.parent.document).ready(function() <.

Я борюсь с триггером jQuery внутри класса ES6. Я не могу понять, почему этот триггер не будет работать. Это мой класс. Триггер должен быть выполнен при вызове метода triggerFilter. // vendor import.

Я использовал функцию события .on(change) , потому что во всем моем коде есть часть, которая динамически меняется. .trigger(change) отлично работает в .change() , но не на .on(change) . Вот мой код.

У меня есть некоторые входные данные select, которые зависят друг от друга. Я хочу select их с данными сеанса аутентификации пользователя соответственно. Это OK и работает нормально. Но иногда.

Источник

Событие Trigger change () при установке значения с помощью функции val()

каков самый простой и лучший способ вызвать изменить событие при установке значения выберите элемент.

Я ожидал, что выполнение следующего кода

приведет к запуску события изменения, что, я думаю, довольно логично. Правильно?

Ну, это не так. Вам нужно triger change() событие, выполнив это

но я ищу какое-то решение, которое вызовет событие изменения, как только значение select будет изменено некоторым кодом javascript.

4 ответов

у меня была очень похожая проблема и я не совсем уверен, что у вас возникли проблемы с, как ваш предложенный код работал для меня. Это тут (ваше требование) вызывает следующий код изменения.

затем я беру значение из базы данных (это используется в форме как для нового ввода, так и для редактирования существующих записей), устанавливаю его как выбранное значение и добавляю недостающую часть, чтобы вызвать приведенный выше код, «.изменение.»)(

Так что, если существующее значение из базы данных «N», оно сразу же скрывает вторичное поле ввода в моей форме.

одна вещь, которую я узнал (трудный путь), это то, что вы должны были

определено перед использованием

как вы, вероятно, знаете, установка значения select не вызывает событие change (), если вы ищете событие, которое запускается, когда значение элемента было изменено через JS, его нет.

если вы действительно хотите сделать это, я думаю, единственный способ-написать функцию, которая проверяет DOM на интервале и отслеживает измененные значения, но определенно не делает этого, если вы не должны (не знаете, почему вам когда-либо понадобится)

добавили это решение:
Другим возможным решением было бы создать свой собственный .val() функция обертки и запустить пользовательское событие после установки значения через .val() , тогда когда вы используете свой .val () обертка для установки значения это вызовет ваше пользовательское событие, которое вы можете поймать и ручка.

Обязательно return this , Так что это цепной в jQuery моды

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

Источник

jQuery trigger onChange

I have a input text field which is filled with the url of an image using a jQuery function. How do I use the «onChange» event of the input to run the jQuery function?

4 Answers 4

If you update field by JavaScript, than after changing value just call on it change()

Put it in any function where you are changing the url in the textbox.

where event_name is the event you’ve bound your checker function, such as keyUp or change

I can’t imagine the problem lies with .change() perhaps somewhere else in your code, I have just tested and the event will get fired if I copy and paste, or if I type some new text (with both normal and onscreen keyboard).

The only time it didn’t seem to trigger was when I dragged some text clipping from the desktop to the input box but this was to do with it being highlighted and sure enough when the input box lost focus the event triggered (I can’t think of any other use cases)

You can do something like below using the blur() or focusout() event which essentially I believe is the change event

Not the answer you’re looking for? Browse other questions tagged function onchange or ask your own question.

Hot Network Questions

Subscribe to RSS

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

site design / logo © 2021 Stack Exchange Inc; user contributions licensed under cc by-sa. rev 2021.10.15.40479

By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.

Источник

Читайте также:  Как настроить нвидиа для варфейс 2021
Оцените статью