1

我想这样做:

<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 时,CommandEventArgs 是空的,我不明白为什么......

谢谢

4

1 回答 1

1

您无法像在示例中那样评估表单字段的值。如果您尝试评估的这些值是静态的,我的意思是不会因用户的操作而改变,您可以将它们静态地传递给按钮的 CommandArgument 属性。

如果值因用户的操作而改变,那么您应该通过像这样的控件引用在服务器端获取它们:

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

对于 LiteralControl,您无法获取它的文本。你应该把它变成表单元素。

Eval 方法不是将控件的值动态传递给服务器的客户端函数。

于 2011-01-06T20:45:02.580 回答