Question

Je voudrais faire ceci:

<asp:ImageButton runat="server" ID="addToCartIMG" OnCommand="btnAdd_Click" EnableViewState="false" CommandArgument='<%# itemId1.Value + ";" + Name1.Text %>' ImageUrl="<%$Resources:MasterPage, Image_AddToCart%>" />

où Item1 est hiddenField et Name1 un littéral.

Quand je déboguer la méthode btnAdd_Click, les CommandEventArgs est vide et je ne comprends pas pourquoi ...

Merci

Était-ce utile?

La solution

Vous ne pouvez pas évaluer les valeurs de champ de formulaire comme vous le faites dans votre exemple. Si ces valeurs que vous essayez d'évaluer sont statiques, je veux dire ne change pas par les actions de vos utilisateurs, vous pouvez les passer statiquement à la propriété CommandArgument de votre bouton.

Si les valeurs changent par les actions de votre utilisateur, alors vous devriez les obtenir à côté serveur par la référence de vos contrôles comme ça:

string itemId = itemId1.Value;
// OR : 
string itemId2 =  Request.Forms["itemId1"];

Pour LiteralControl, vous ne pouvez pas obtenir un texte de lui. vous devez tourner à l'élément de forme.

Eval procédé est pas une fonction côté client qui passe de façon dynamique les valeurs de vos commandes au serveur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top