sulla mia pagina ho ottenuto il seguente controllo utente:ASP.NET e dialogo jQuery
<div class="editFormDialog" style="display: none; font-size: 12px;">
<mm:Form ID="editUC" ShowCreateButton="false" ShowEditButton="true" runat="server" />
</div>
Questa UC ha una proprietà pubblica che prende un DataSet e aggiorna alcuni campi nella UC.
Così quando spingo un pulsante sulla mia pagina, chiama questa proprietà sull'UC e l'UC viene aggiornata con i dati dal DataSet.
Fin qui tutto bene. Il problema sorge quando voglio che l'UC sia una finestra di dialogo dell'interfaccia utente jQuery.
prima cosa creare il dialogo:
$(document).ready(function() {
$('.editFormDialog').dialog({
autoOpen: false,
height: 700,
width: 780,
modal: true,
bgiframe: true,
title: 'Rediger',
open: function(type, data) {
$(this).parent().appendTo("form");
$(this).css('display', 'block');
}
});
});
E io wan't per aprire su un pulsante (non si tratta di un pulsante di ASP.NET, semplice HTML):
$('#btnEdit').live('click', function() {
$('.editFormDialog').dialog('open');
});
Si apre la finestra di dialogo, ma l'UC non contiene i dati corretti. Quando la pagina viene caricata, l'UC viene aggiornata con i dati predefiniti. Quindi l'utente fa clic su un pulsante e i dati cambiano ma l'UC non viene aggiornata. Contiene ancora i dati predefiniti. Questo è il problema.
Avete qualche idea del perché?
L'aiuto sarà molto apprezzato!
Ho fatto clic su un pulsante per ottenere i dati successivi. Si verifica un postback. La proprietà nell'UC è impostata come "editUC.EditData = ds;".La pagina esce con i nuovi dati. Ora quando faccio clic su un altro pulsante che fa il popup della finestra di dialogo, l'UC contiene ancora i dati predefiniti. Come se non avesse registrato le modifiche nella sua origine dati. Ma se visualizzo l'UC fuori dalla finestra di dialogo, funziona perfettamente. –
Sembra strano: potresti pubblicare un po 'del tuo codice sorgente? –
È tutto inserito in un pannello di aggiornamento. Può essere quando creo il dialogo, è "spostato all'esterno" del pannello di aggiornamento? Forse un'altra soluzione potrebbe essere quella di creare il dialogo ogni volta che viene aperto e quindi rimuoverlo quando è chiuso? Ovviamente posizionando gli elementi html nel posto giusto. Ma come posso farlo? –