如何在转发器中手动回发?

时间:2011-02-16 07:11:59

标签: c# webforms

我是asp.net webforms的新手,所以我愿意接受任何建议。

我正在列出带有转发器的产品。 每件产品看起来都像这样:

<ItemTemplate>
   <div class="actionbutton_normal actionbutton_cart" onmouseover="actnbut_hover($(this))" onmouseout="actnbut_out($(this))" onclick="actnbut_click($(this))">
      <asp:CheckBox Checked="false" class="actnbox_hidden" ID="chkCart" runat="server" AutoPostBack="True" />
   </div>
</ItemTemplate>

如您所见,隐藏了复选框本身,它用于表示图标的状态。 我在actnbut_click函数中修改了javascript中复选框的Checked属性。这个问题是在javascript中检查框不会激活autopostback,(我认为它甚至没有进入viewstate,但我不确定)。我试图手动回发但我无法弄清楚如何正确地执行它,因为复选框的ID是由转发器生成的。

总而言之,我想要这个功能:有一些项目,在它们下面是按钮(最喜欢的,添加到购物车,选择比较等),有漂亮的悬停和点击它们的动画。如果我点击它们,我想要执行服务器端逻辑(取决于我在哪个项目下单击的按钮,例如添加到购物车应该将特定项目添加到购物车面板,或者点击fav应该访问数据库并增加项目的最爱value by one,并将项添加到用户收藏夹中),但保留页面上对象的状态,包括按钮的状态(单击与否)。

这是最好的方法吗?

1 个答案:

答案 0 :(得分:0)

从javascript调用__doPostBack(controlName,options)。