2014-09-02 79 views
0

我试图在itemtemplate内部运行我的OnCheckedChanged,但它并未触发。我所做的是我在asp:CheckBox标签中键入了OnCheckChanged,并且还手动键入了整个方法。这会影响过程?OnCheckedChanged点击时没有触发

<asp:CheckBox runat="server" ID="uoCheckBoxTagtoVehicle" OnCheckedChanged="ChkChanged" AutoPostBack="true" Width="50px" /> 

和我的事件:

protected void ChkChanged(object sender, EventArgs e) 
{ 
    uoHiddenFieldVehicle.Value = "1"; 
} 

注:我使用Visual Studio 2008的

+0

方法里面的updatepanel或没有更新面板? – 2014-09-02 07:10:32

回答

1

由于您的控件位于GridView中(因为您说ItemTemplate我假设您这样做),因此您无法像您一样使用您的方法来附加事件。因为一旦填充了GridView,将会出现多个复选框。因此,请执行下列操作

  1. 在您GridView的数据绑定事件找到ID的复选框(使用FindControl方法)
  2. 然后连接事件OnCheckedChanged给你,你使用网书面
0

也许你正在数据绑定页面还回发。你应该这样做...

if(!IsPostBack) 
{ 
    DataBindPage(); // method which databinds your controls like GridView 
} 

否则,你可以防止事件被触发。