$ ('# idField'). val () dans un dialogue JQuery
-
22-07-2019 - |
Question
Je voudrais savoir si je peux utiliser la fonction JQuery suivante sur un identifiant d'élément situé dans une boîte de dialogue JQuery.
$('#idofmyfield').val()
N'a rien retourné.
La solution
Vous devrez peut-être ajuster votre identifiant de sélecteur sur le balisage généré par la boîte de dialogue:
<div class="ui-dialog ui-widget ui-widget-content ui-corner-all ui-draggable ui-resizable">
<div class="ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix">
<span id="ui-dialog-title-dialog" class="ui-dialog-title">Dialog title</span>
<a class="ui-dialog-titlebar-close ui-corner-all" href="#"><span class="ui-icon ui-icon-closethick">close</span></a>
</div>
<div style="height: 200px; min-height: 109px; width: auto;" class="ui-dialog-content ui-widget-content" id="dialog">
<p>Dialog content goes here.</p>
</div>
</div>
peut-être faire ceci:
$('div.ui-widget-content > #idofmyfield').val();
J'ai eu une situation similaire en extrayant des données JSON pour remplir une boîte de dialogue. Mon code, qui fonctionne, ressemble à ce qui suit:
if (jQuery) {
jQuery(document).ready(function(){
jQuery('#dialog').dialog({
autoOpen: false,
modal: true,
width: 690,
position: [160, 160]
}); /* end #dialog */
/* do some processing and add the following to a click method */
jQuery.getJSON(json_link, function(json){
jQuery('.ui-dialog-title').text(json.title);
jQuery('.ui-dialog-content').html(json.html);
});
jQuery('#dialog').dialog('open');
/* end of click method */
}); /* end document.ready */
}
Autres conseils
consulter les événements pour consulter la boîte de dialogue
$('.yourDialog').dialog({
close: function(event, ui) {
alert($('#idofmyfield').val());
}
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow