Je veux déclencher l’événement de modification de la liste déroulante dans $ (document) .ready en utilisant jquery.
J’ai un menu déroulant en cascade pour le pays et l’état dans la page des détails de l’utilisateur. Comment puis-je définir la valeur (qui provient de la firebase database basée sur l’ID utilisateur) pour le pays et l’état dans MVC avec C #.
Je ne sais pas beaucoup JQuery mais j’ai entendu dire qu’il permet de tirer des événements natifs avec cette syntaxe.
$(document).ready(function(){ $('#countrylist').change(function(e){ // Your event handler }); // And now fire change event when the DOM is ready $('#countrylist').sortinggger('change'); });
Vous devez déclarer le gestionnaire d’événements change avant d’appeler sortinggger () ou change () sinon il ne sera pas déclenché. Merci pour la mention @LenielMacaferi.
Plus d’informations ici .
Essaye ça:
$(document).ready(function(event) { $('#countrylist').change(function(e){ // put code here }).change(); });
Définissez l’événement de changement et déclenchez-le immédiatement. Cela garantit que le gestionnaire d’événements est défini avant de l’appeler.
Peut-être en retard pour répondre à l’affiche originale, mais quelqu’un d’autre pourrait bénéficier de la notation abrégée, et cela suit l’enchaînement de jQuery, etc.
jquery chaining
Si vous essayez d’avoir des listes déroulantes liées, la meilleure façon de le faire est d’avoir un script qui renvoie la zone de sélection prédéfinie et un appel AJAX qui le demande.
Voici la documentation de la méthode Ajax de jQuery si vous en avez besoin.
$(document).ready(function(){ $('#countrylist').change(function(e){ $this = $(e.target); $.ajax({ type: "POST", url: "scriptname.asp", // Don't know asp/asp.net at all so you will have to do this bit data: { country: $this.val() }, success:function(data){ $('#stateBoxHook').html(data); } }); }); });
Puis, entourez votre état d’une case à cocher avec l’id de “stateBoxHook”
Essaye ça:
$('#id').change();
Travaille pour moi.
Sur une ligne avec la définition de la valeur: $('#id').val(16).change();
sinon, vous pouvez mettre l’atsortingbut onchange sur la liste déroulante elle-même, ce que onchange appellera certaines fonctions jquery comme ceci.
J’espère que celui-ci vous aidera, et veuillez noter que ce code n’est qu’un brouillon, non testé sur aucune idée. Merci