sur le changement de boîte de sélection dans le panneau modal. Je lance une requête ajax et le chargement des données du panneau modal dépend de la réponse.éviter les liaisons multiples ajax
Je vois d'abord qu'une seule requête est en cours à la première tentative. mais il continue à augmenter avec le nombre de fois avec l'option de sélection.
ci-dessous est mon script
$(".dds").msDropDown();
$('#dropdown').off('change');
$('#dropdown').on('change', takeAction);
function takeAction(event){
event.preventDefault();
var colour = $('#colors .selected').attr('data-color');
console.log(colour);
new Ajaxinator().jsonPost({
url :$(event.currentTarget).val(),
data : {
name : $(event.currentTarget).attr('title'),
colour : colour
},
success: function (response)
{
$('#dropdown').off('change');
$('#Data').html(response.Data);
$('#dropdown').off('change',takeAction);
}
});
};
Je pense que cela est dû à chaque demande ajax la nouvelle liaison est crée pour #dropdown et onchange fonction appelle plusieurs fois. Quelqu'un peut m'aider.
Je ne sais pas exactement quel est le problème ... votre code actuel indique au navigateur d'appeler la fonction 'takeAction()' chaque fois que la liste déroulante change (c'est-à-dire qu'une nouvelle option est sélectionnée). N'est-ce pas ce que tu veux? Ou y a-t-il un autre problème? –
mais ces fonctions appellent plusieurs fois .. d'abord quand je change la liste déroulante elle appelle seulement une fois ce qui est bien .. quand je change encore la liste déroulante cette fonction appelant deux fois ... et il continue à augmenter – sree
Hmmm, de ce que je peux voir, cela ne devrait pas arriver ... peut-être le problème est dans le HTML ou une autre partie du Javascript? Aussi, qu'est-ce que .msDropDown()? Est-ce une liste déroulante personnalisée? Peut-être que le problème est avec ça. –