Вызов функции обработчика onchange

#jquery #javascript

#jquery #javascript

Вопрос:

У меня есть эта OnChange функция:

 $("select[id^=type]").change(function(){/*...*/});
  

Вопрос в том, как я могу вызвать это из следующей функции:

 $("#all_db").change(function()
{
    /*...*/
    $("select[id^=type]").each.trigger("change"); //I have tried this
});
  

Ответ №1:

 $("select[id^='type']").change();
  

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

Ответ №2:

Вы должны объявить функцию отдельно. В вашем примере вы говорите jQuery, чтобы вызвать изменение функции, когда настало время. Тем не менее, такой функции не существует. Для этого попробуйте объявить вашу функцию как отдельную. Вот так:

 function myDesiredFunc(){ /*console.log("Inside it");*/ }
$("#all_db").change(myDesiredFunc);
$("select[id^=type]").change(myDesiredFunc);
  

Обратите внимание, что я прокомментировал консоль.войдите, потому что это будет работать, только если у вас установлен firebug.

Надеюсь, это поможет.

Ответ №3:

$("select[id^=type]").trigger("change");

должно сработать. В противном случае это должно:

 $("select[id^=type]").each(function(i){
 $(this).trigger("change");
});
  

Ответ №4:

Посмотрите на это :

 $("#all_db").change(function()
{
    /*...*/
    $("select[id^=type]").change();
});
  

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

Ответ №5:

$('select').change(); затем вы можете делать $('select[id='yourIdHere']').change(); все, что захотите.