2010-02-24 8 views
1

J'utilise JQuery UI pour afficher un modal, après avoir fait une recherche sur une valeur de champ de saisie. Cela doit se déclencher chaque fois que la valeur change dans le champ de saisie.JQuery UI Modal ne fonctionne que la première fois

Mon problème est, que le modal affiche uniquement la première fois que le code est appelé - pas des fois suivantes. Je sais que le code s'exécute, parce que j'ai essayé de mettre des alertes là-dedans - cela s'est affiché comme prévu.

Qu'est-ce qui me manque ici?

<input id="RegistrationNo" name="RegistrationNo" type="text"/> 

<span style=visibility:hidden" id="dialog">Nononono!!</span> 

<script> 
    $("#RegistrationNo").change(function() { 
    //Some check here... 
    $("#dialog").dialog({ 
     bgiframe: true, 
     modal: true, 
     buttons: { 
     Ok: function() { 
      $(this).dialog('close'); 
      } 
     } 
     }); 
    }); 
</script> 

Répondre

2

essayer de créer la boîte de dialogue une seule fois, puis il suffit d'ouvrir/fermer au besoin:

<input id="RegistrationNo" name="RegistrationNo" type="text"/> 

<span id="dialog">Nononono!!</span> 

<script> 
    $("#dialog").dialog({ 
     bgiframe: true, 
     modal: true, 
     autoOpen:false, 
     buttons: { 
     Ok: function() { 
      $(this).dialog('close'); 
      } 
     } 
     }); 
    $("#RegistrationNo").change(function() { 
    $("#dialog").dialog("open"); 
    }); 

</script> 
Questions connexes