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

Событие изменения триггера <select> с помощью jquery

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

Также функция выполняется путем добавления триггера после привязки функции к событию.

Я пытался вывести что-то вроде этого

<select class="check">
<option value="one">one</option>
<option value="two">two</option>
</select>

$(function(){
    $('.check').trigger('change'); //This event will fire the change event. 
    $('.check').change(function(){
      var data= $(this).val();
      alert(data);            
    });
});

http://jsfiddle.net/v7QWd/1/

4b9b3361

Ответ 1

Используйте val(), чтобы изменить значение (а не текст) и trigger(), чтобы вручную запустить событие.

Обработчик события изменения должен быть объявлен перед триггером.

Вот пример

$('.check').change(function(){
  var data= $(this).val();
  alert(data);            
});

$('.check')
    .val('two')
    .trigger('change');

Ответ 2

Чтобы выбрать параметр, используйте .val('value-of-the-option') в элементе select. Чтобы вызвать элемент изменения, используйте .change() или .trigger('change').

Проблемы в вашем коде - это запятая вместо точки в $('.check'),trigger('change'); и тот факт, что вы вызываете ее перед привязкой обработчика события.

Ответ 3

$('#edit_user_details').find('select').trigger('change');

Он изменит раскрывающийся элемент тега выберите html тег < <21 > .

Ответ 4

Приведите ссылки в значении тега option

<select size="1" name="links" onchange="window.location.href=this.value;">
   <option value="http://www.google.com">Google</option>
   <option value="http://www.yahoo.com">Yahoo</option>
</select>

Ответ 5

Если вы хотите сделать некоторые проверки, используйте этот способ

 <select size="1" name="links" onchange="functionToTriggerClick(this.value)">
    <option value="">Select a Search Engine</option>        
    <option value="http://www.google.com">Google</option>
    <option value="http://www.yahoo.com">Yahoo</option>
</select>

<script>

   function functionToTriggerClick(link) {

     if(link != ''){
        window.location.href=link;
        }
    }  

</script>

Ответ 6

Другое рабочее решение для тех, кто был заблокирован с помощью обработчика триггера jQuery, которое запускает огонь на нативных событиях, будет как ниже (100% работает):

var sortBySelect = document.querySelector("select.your-class"); 
sortBySelect.value = "new value"; 
sortBySelect.dispatchEvent(new Event("change"));