CommandArgument è vuoto
-
30-09-2019 - |
Domanda
mi piacerebbe fare questo:
<asp:ImageButton runat="server" ID="addToCartIMG" OnCommand="btnAdd_Click" EnableViewState="false" CommandArgument='<%# itemId1.Value + ";" + Name1.Text %>' ImageUrl="<%$Resources:MasterPage, Image_AddToCart%>" />
dove Item1 è HiddenField e Name1 un letterale.
Quando il debug del metodo btnAdd_Click, i CommandEventArgs è vuota e non capisco perché ...
Grazie
Soluzione
Non è possibile valutare i valori di campo di modulo, come si fa nel tuo esempio. Se questi valori si tenta di valutare sono statici, voglio dire non cambia dalle azioni del vostro utente, è possibile passarli staticamente alla proprietà CommandArgument del pulsante.
Se i valori stanno cambiando dalle azioni del vostro utente, allora si dovrebbe ottenere loro a lato server dal riferimento dei controlli del genere:
string itemId = itemId1.Value;
// OR :
string itemId2 = Request.Forms["itemId1"];
Per LiteralControl, non è possibile farlo di testo. si dovrebbe girare a elemento modulo.
metodo Eval non è una funzione del lato client che passa i valori i controlli dinamicamente ai server.