1

J'ai une très longue liste d'éléments pour une liste déroulante. Comme la liste est très longue, je souhaite afficher uniquement les éléments de la liste si l'utilisateur clique sur la liste déroulante pour la développer. J'ai trouvé divers tutoriels sur la façon d'utiliser AJAX avec des listes déroulantes en cascade mais aucun expliquant s'il est possible d'avoir une seule liste déroulante qui est remplie avec AJAX lorsque l'utilisateur l'étend.Remplir un DropDownList avec AJAX

Y a-t-il des extensions venant avec la boîte à outils AJAX que j'ai manquée? Quel serait le meilleur moyen d'y parvenir?

Merci, Ben

Répondre

1

Ce que je voudrais faire est la suivante:

Avoir un article vide dans la liste. Lorsque la liste déroulante reçoit le focus, vous changez cet élément pour dire Chargement ou quelque chose comme ça. Ensuite, vous faites l'appel ajax que vous voulez. Une fois que vous avez terminé, désactivez l'événement de mise au point dans la liste déroulante afin de ne pas recharger les événements de mise au point suivants.

On dirait que ce ne serait pas trop difficile de faire quelque chose comme ça.

Je vais voir si je peux trouver quelque chose sur jsfiddle si vous avez besoin d'aide.

EDIT: En passant à votre question sur les extendeurs, je ne sais rien à ce sujet.

EDIT 2: Vous pouvez essayer quelque chose comme ceci:

$(document).ready(
    function() 
    { 
     $("#theSelect").bind("focus", function() 
          { 
           $("option:first", this).html("Loading..."); 
           setTimeout(AjaxSuccessCall, 2000); 
          }); 
    }); 

function AjaxSuccessCall(data) 
{ 
    var select = $("#theSelect"); 
    select.unbind("focus"); 
    select.children("option").remove(); 
} 
+0

Salut spinon, merci pour votre réponse. Connaissez-vous des tutoriels qui utiliseraient une telle approche? Je commence juste avec la chose entière d'AJAX donc pas tout à fait sûr que chercher. – b3n

+0

J'ai ajouté un exemple. – spinon

+0

Merci pour l'exemple spinon, mal essayer. À votre santé. – b3n

Questions connexes