Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jquery execute onchange event on onload

I have a function that on change event run the post actions.

$("select#marca").change(function(){     var marca = $("select#marca option:selected").attr('value');     $("select#modello").html(attendere); $.post("select.php", {id_marca:marca}, function(data){         $("select#modello").html(data);     }); }); 

I would like to perform this function onload event. Is it possible? Is there a good way to do this?

like image 577
Paolo Rossi Avatar asked Feb 20 '13 16:02

Paolo Rossi


People also ask

Is Onchange an event handler?

Tip: This event is similar to the oninput event. The difference is that the oninput event occurs immediately after the value of an element has changed, while onchange occurs when the element loses focus, after the content has been changed. The other difference is that the onchange event also works on <select> elements.


2 Answers

Just put it in a function, then call it on document ready too, like so:

$(function () {     yourFunction(); //this calls it on load     $("select#marca").change(yourFunction); });  function yourFunction() {     var marca = $("select#marca option:selected").attr('value');     $("select#modello").html(attendere);     $.post("select.php", {id_marca:marca}, function(data){         $("select#modello").html(data);     }); } 

Or just invoke change on page load?

$(function () {     $("select#marca").change(); }); 
like image 121
mattytommo Avatar answered Oct 06 '22 20:10

mattytommo


Really simple way it to just chain another .change() event to the end of your on change function like this:

$("#yourElement").change(function(){    // your code here }).change(); // automatically execute the on change function you just wrote 
like image 36
stevecomrie Avatar answered Oct 06 '22 19:10

stevecomrie