2009-10-26 53 views
1

我已经扩展了Gridview使其可点击(即,当我们点击任何行时,它被选中并根据所选行显示详细视图) 。ASP.NET Gridview:我们如何才能找到在gridview中选择了哪一列

然后,我添加了选择/取消选择该GridView中的所有复选框与JavaScript的帮助。现在的问题是,每次单击复选框时,页面都将被回发。我不希望这个我不想回发,如果这个特定的列元素,即复选框被按下。

有什么办法,我可以知道当回发发生时,哪些列被选中,以便我可以知道它是从具有复选框的列发生的。

请让我知道,如果你有灵魂。

感谢,

+0

什么是您的代码,使整个行可点击什么样子的?它是否生成回传?我还用JavaScript重新签署了您的问题,因为您需要客户端解决方案解决您的问题。 – 2009-10-26 21:54:37

回答

1

我发现我的问题的解决方案如下:

我们必须取消复选框中的事件冒泡,以免冒泡到Gridview RowClicked事件。

取消该事件鼓泡形式复选框的方法是如下:

cb.Attributes( “点击”)= “event.cancelBubble = TRUE;”

其中cb是复选框。

希望这将帮助有相同的问题,因为我做了别人,

感谢,

0

我,不知道你如何准确的复选框添加到您的GridView行,但如果你做服务器端确保AutoPostBack属性为(或每个)复选框设为假。如果设置为true,只要有人检查/取消选中其中一个复选框,就会以回传结束。

0

我们可以在GridView控件添加复选框,下面是我们需要的GridView里面列的样本代码:

<asp:TemplateField HeaderText="Select"> 
<ItemTemplate> 
    <asp:CheckBox ID="chkBxSelect" runat="server" AutoPostBack ="false" /> 
</ItemTemplate> 
<HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="50px" /> 
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="50px" /> 
<HeaderTemplate> 
    <asp:CheckBox ID="chkBxHeader" onclick="javascript:HeaderClick(this);" runat="server" /> 
</HeaderTemplate> 

是否有可能在ASP.NET GridView中,我们回传,如果我们点击在Gridview的某些列中,当我们点击某些选定的列时,我们不会回发。

例如我有一个GridView中的3列,我想回发如果我点击列1和2,不想回发,如果我点击列3.

相关问题