【问题标题】:How to trigger a datagrid event when a checkbox is checked?选中复选框时如何触发数据网格事件?
【发布时间】:2012-05-16 09:24:52
【问题描述】:

在项目模板的数据网格内,按钮被替换为复选框以提高可行性,如果我单击按钮,面板会相应显示,面板元素也会与其内容一起显示。

现在我的要求是在项目模板中使用复选框更改此按钮,并且在标题模板中包含另一个复选框。

我可以选择检查中的项目,也可以检查数据网格中的所有项目。 我有两个面板 A 和 B(比如说),当我选中多个复选框时,将显示面板 B。

当我只选中一个复选框时,只会显示面板 A。

在我的情况下,检查此复选框时,我能够针对它们的相应动作看到面板A和B,但是面板内的元素(例如(相应的行的数据库事件未正确获取)。谁能用一些示例清楚地解释我如何解决这个问题,或者你能在我的代码中提供帮助吗?

【问题讨论】:

  • 我想您之前使用了按钮控件的 CommandName 属性并在 ItemCommand 中捕获事件。您找不到复选框的 CommandName 吗?
  • 我无法在数据网格内的 Checkbox 中找到 CommandName 属性

标签: asp.net datagridview checkbox itemtemplate datagridviewcheckboxcell


【解决方案1】:

是的,因为像复选框这样的事件冒泡控件无法触发 ItemCommand 事件。您可以尝试创建一个变通方法。

通过添加 display:none 样式获取按钮并隐藏它,添加客户端 OnClientClick 事件使用 javascript 调用此按钮的单击事件。

例如

chk.Add("onclick", "javascript:document.getElementById('" + btn.ClientID + "').click()");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-13
    • 2022-01-26
    • 2018-10-13
    相关资源
    最近更新 更多