2010-10-04 5 views
0

J'ai une page Web qui contient des zones de texte. Lorsqu'un utilisateur clique sur l'une des zones de texte d'une boîte de dialogue jQuery UI ouvre à l'aide du .load pour charger une page HTML contenant les éléments suivants:Boîte de dialogue jQuery UI utilisant .load, comment fermer la boîte de dialogue lors de la sélection dans une liste déroulante

<select name="resp" id="input" onclick="parent.mfac_value(this.form.resp.value);"> 
    <option value="Choice"> 
    <option value="APC">APC</OPTION> 
    <option value="APPLE">APPLE</OPTION> 
    <option value="XEROX">XEROX</OPTION> 
</select> 

Je retourne avec succès la valeur à la zone de texte parent via parent.mfac_falue fonction, mais la fenêtre modale ne pas autoclose sur la sélection de l'élément, ce qui est ce que je veux arriver.

Comment puis-je faire en sorte que la fenêtre modale soit autoclosée immédiatement après que quelqu'un ait sélectionné un élément dans la liste déroulante? Faites-moi savoir si vous avez besoin de plus d'informations, merci.

Mise à jour:

En fait, où je mettrais le code .closest. Serait-ce dans le fichier HTML appelé ou le fichier parent. J'ai du mal à faire fonctionner la solution.

Répondre

0

Vous pouvez joindre un gestionnaire d'événement, je voudrais utiliser .change() ici, comme ceci:

$("#input").change(function() { 
    $(this).closest(".ui-dialog-content").dialog("close"); 
}); 

Cela va jusqu'à conteneur de dialogue, trouver via .closest() et le sélecteur .ui-dialog-content (la classe la boîte de dialogue widget lui a donné) puis appelle le close method on dialog.

0

Essayez ceci:

onchange="parent.mfac_value(this.form.resp.value);$('#ID_OF_DIALOG').dialog('close');" 
Questions connexes