CommandArgumentは空です
-
30-09-2019 - |
質問
これをやりたい:
<asp:ImageButton runat="server" ID="addToCartIMG" OnCommand="btnAdd_Click" EnableViewState="false" CommandArgument='<%# itemId1.Value + ";" + Name1.Text %>' ImageUrl="<%$Resources:MasterPage, Image_AddToCart%>" />
Item1がHiddenfield、Name1が文字通りです。
メソッドbtnadd_clickをデバッグすると、commandventargsは空ですが、理由がわかりません...
ありがとうございました
解決
例のように、フォームフィールドの値を評価することはできません。評価しようとするこれらの値が静的である場合、ユーザーのアクションによって変更されないことを意味します。ボタンのCommandArgumentプロパティに静的に渡すことができます。
ユーザーのアクションによって値が変化している場合は、そのようなコントロールを参照して、サーバー側でそれらを取得する必要があります。
string itemId = itemId1.Value;
// OR :
string itemId2 = Request.Forms["itemId1"];
LiteralControlの場合、テキストを取得できません。要素を形成するためにそれを回す必要があります。
評価方法は、コントロールの値をサーバーに動的に渡すクライアント側の関数ではありません。
所属していません StackOverflow