Domanda

Come si può aggiornare un input nascosto all'interno di un UpdatePanel su un AsyncPostBack?

L'utente fa clic su un pulsante all'esterno del pannello. Il metodo associato all'evento click aggiorna il valore dell'input (ha runat = & Quot; server & Quot; proprietà).

Non riesco ad aggiornare il valore di questo input.

Devo memorizzare un valore da utilizzare nel seguente postback. Forse posso usare la sessione per memorizzare questo valore.

Qualche consiglio?

Grazie!

È stato utile?

Soluzione 4

Assolutamente no. L'unico modo per aggiornare un input è fare un post completo. È meglio usare l'oggetto Sessione.

Altri suggerimenti

Poiché si tratta di un postback, potrebbe essere necessario eseguire un controllo nell'evento post back ed eseguire l'aggiornamento. In caso contrario, potrebbe essere necessario sostituire un evento precedente. Vedi http://msdn.microsoft.com/en-us/library/dct97kc3 aspx

Se devi aggiornare il pannello di aggiornamento (e i relativi contenuti) in base all'utente che fa clic su un pulsante che non si trova nel pannello di aggiornamento, aggiungi una sezione al pannello di aggiornamento come la seguente:

<asp:Button ID="btnOK" runat="server"/> 
<asp:UpdatePanel ID="pnlMyPanel" runat="server">
    <ContentTemplate>
        <!-- Content to get updated -->
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="btnOK" />
    </Triggers> 
</asp:UpdatePanel>

La sezione dei trigger nell'esempio sopra dice al pannello di aggiornamento di aggiornarsi se si fa clic sul pulsante.

Potresti provare un <asp:HiddenField> anziché un <input type='hidden' runat='server'>. Penso che la versione di asp.net sia più consapevole del post-back.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top