ASP.NET PostBack 选择树视图的复选框

2023-12-02

我有一个 asp.net 项目并使用 C# 工作。

在我的项目中,我有一个带有复选框的数据绑定列表框。

例如,当用户单击复选框时,它应该更新标签/文本框。

问题是,它不会更新标签/文本框,直到我单击执行回发的按钮。我将如何调用复选框更改事件的回发,因为“OnTreeNodeCheckChanged”事件看起来只在触发回发后才会触发? 这是否是一个好主意(每次更改复选框时都希望调用回发)

--更新了代码片段-- 天冬氨酸

 <asp:TreeView ID="treevCourses" runat="server" AutoPostBack="true" ShowCheckBoxes="All" Width="100%"
                OnTreeNodeCheckChanged="check_changed" Height="16px" ImageSet="Contacts">

(尝试在 C# 部分中使用处理程序。) C#

protected void check_changed(object sender, TreeNodeEventArgs e)
        {
        lblTest.Text = "TestText";
        }

(还尝试将其放在脚本部分)

void check_changed(object sender, EventArgs e)
    {
        lblTest.Text = "TestText";
    }

将数据绑定到 Treeview(这发生在按钮回发上)

foreach (DataRow row in ds.Tables[0].Rows)
                {
                    TreeNode node = new TreeNode(row["courseName"].ToString(), row["courseName"].ToString());
                    //  node.PopulateOnDemand = true;
                    treevCourses.Nodes.Add(node);
                }


                //select from topic where parentId = topicId.
                ds = myConClass.returnSqlDataset("select cd.courseName,ct.[date] from courseDetails cd join courseTimes ct on cd.courseId = ct.courseId");

                foreach (TreeNode treenode in treevCourses.Nodes)
                {
                    foreach (DataRow row in ds.Tables[0].Rows)
                    {
                        if (row["courseName"].ToString() == treenode.Value)
                        {
                            TreeNode node = new TreeNode(row["date"].ToString(), row["date"].ToString());
                            treenode.ChildNodes.Add(node);
                        }
                    }       
                }

没有AutoPostBackTreeView 上的属性。并且根据MSDN, The TreeNodeCheckChanged当复选框中的复选框时引发事件TreeView控制在发送到服务器之间更改状态

您需要做其他事情,就像上面提到的那样这个链接

1)在页面加载时向TreeView1添加点击属性

protected void Page_Load(object sender, EventArgs e)
{
     TreeView1.Attributes.Add("onclick", "postBackByObject()");
}

2)添加javascript函数并进行回发

    <script type="text/javascript">

     function postBackByObject()
     {
         var o = window.event.srcElement;
         if (o.tagName == "INPUT" && o.type == "checkbox")
        {
           __doPostBack("","");
        } 
    }
   </script>

3)。实施TreeNodeCheckChanged event

protected void TreeView1_TreeNodeCheckChanged(object sender, TreeNodeEventArgs e)
        {
            // do stuff
        } 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET PostBack 选择树视图的复选框 的相关文章

随机推荐

  • 获取adb版本失败; Ubuntu 11.10 中错误 = 13

    我向 eclipse 添加了 32 位 android adk Classic Indigo 版本 3 7 0 Ubuntu 11 10 中的构建 ID I20110613 1736 我使用 32 位 Ubuntu 当我启动 Eclipse
  • mod_rewrite 重定向不存在的 URL

    我有一个旧网站 我已经接管了 新用户基本上会获得为他们创建的自定义页面 这是以一种不太奇妙的方式完成的 目前 它实际上生成一个以创建的 slug URL 命名的文件 并将其符号链接到名为 main 的文件夹 显然我想改变这一点 我的计划只是
  • FsUnit“should equal”在“Some []”上失败

    当我使用 NUnit 2 6 3 运行 FsUnit 测试时 let f xs Some List map 2 xs
  • jQuery 通过一个操作在三个 SELECT 下拉列表中选择相同的选项

    我有 3 个 SELECT 下拉菜单 SELECT 1
  • 在 iOS 9 仅快捷栏模式下,与键盘顶部对齐的视图出现在错误的位置

    iOS 9 添加了一个快捷栏到 iOS 8QuickType 栏 作为此更改的一部分 如果您将蓝牙键盘连接到 iPad 键盘将处于最小化的仅限快捷栏模式 可以通过在模拟器中按 command k 来模拟 我有使用类似于以下方法获取键盘高度的
  • CollectionView 中用于评论和回复的多个单元格

    我有两种不同的单元格类型 一种用于评论 另一种用于回复 我正在尝试以相同的方式呈现它们collectionView然后也许可以像这样对它们进行分组 每个具有特定 id 的评论下面都有其回复 然而 无论什么尝试 我都失败了 你会怎样做呢 pr
  • 解析日期并将其存储在 SQLite 数据库中

    我正在使用 SAXParser 解析 xml 文件 并在处理程序内部创建对象 其中数据成员之一是日期 我的 XML 文件上的日期采用以下格式 2010 12 28 但我找不到如何将这样的字符串转换为 Date 对象 而且我也不明白如何将它存
  • 如何最好地表示数据库中属性数量可变的项目?

    假设您想创建小部件列表 小部件制造商都创建具有不同数量和类型属性的小部件 Widget 卖家对于想要在数据库中存储和显示的属性类型和数量都有不同的偏好 现在的问题是 每次添加新的小部件时 它可能具有当前任何其他小部件都不存在的属性 当前您通
  • 从java调用ant,ant终止后返回java

    到目前为止 我已经从java调用了ant脚本 现在的问题是 ant构建终止后是否可以恢复java执行 我该怎么做 org apache tools ant Main s main and startAnt 方法调用exit 方法依次调用Sy
  • 使用 angular.js 将自定义标头添加到 HTTP 请求

    我是 angular js 的新手 我正在尝试向请求添加一些标头 var config headers Authorization Basic d2VudHdvcnRobWFuOkNoYW5nZV9tZQ Accept applicatio
  • VBA 中的 while 循环

    我的数据如下表所示 该数据集中的观察数量每个月都有所不同 列保持不变 我想在每一行中循环我的代码 直到该行为空 我认为 do while 循环是合适的 但到目前为止我还没有成功执行它 值得注意的是 我是一个完全的 VBA 新手 其他一些注意
  • 如何获取两个日期时间之间的小时和分钟差异

    如果我有两个这样的日期时间 transtime in transtime out 如何以以下格式获取这些日期时间之间的差异 hh mm I use DATEDIFF hour transtime in transtime out 但我只得到
  • 使用 InvokeScript 更改 C# 变量

    我需要检查 Windows Phone 应用程序中的 WebBrowser 控件是否有历史记录 我想出的方法是使用browser InvokeScript eval if history length gt 0 history go 1 我
  • 一次更新两个表

    我的 MySQL 版本使用的是 5 1 41 3ubuntu12 10 UPDATE profiledata SET aboutyou aboutyou quotes quotes WHERE uid sess uid and UPDATE
  • 如何使用OpenFeign获取pojo数组?

    我正在尝试使用 OpenFeign 客户端访问 API 获取一些 JSON 并将其转换为 POJO 数组 以前我只是简单地获取一串 JSON 并使用 Gson 将其转换为数组 如下所示 FeignInterface String get R
  • 如何在ASP.NET中实现实时更新

    我见过几个网站向您展示数据库中发生的情况的实时更新 一个例子可以是 实时显示股票价格的股票行情网站 显示诸如 其他用户当前正在搜索什么 之类的数据 我认为这将涉及某种轮询机制 每隔几秒钟查询数据库并将其呈现在网页上 但当我从性能的角度思考时
  • D3 生成的 LinearGradient 在 Firefox/IE 中不起作用

    我正在开发一个 D3 库 它将 D3 与 AngularJS 指令集成在一起 称为角D3 最近的指令之一允许生成可以绑定到数据并动态更新的梯度 这似乎适用于除 Firefox 之外的所有浏览器 但是 如果我将输出 SVG 复制 粘贴到 JS
  • 在 Dialogflow 中使用 NodeMailer

    我想发送一封电子邮件 要求在 Dialogflow 中制作的程序中进行操作 我想使用 NodeMailer 但是当我部署项目时 出现以下错误消息 您的云函数部署失败 函数加载错误 无法加载文件index js 中的代码 您是否列出了所有必需
  • Java SQL 时间戳到 ZonedDateTime

    我想将 ZonedDateTime 对象转换为 java sql Timestamp 对象 而不使用本地日期 例如 假设我有以下日期时间 System out println myZonedDateTime gt 2018 09 02T23
  • ASP.NET PostBack 选择树视图的复选框

    我有一个 asp net 项目并使用 C 工作 在我的项目中 我有一个带有复选框的数据绑定列表框 例如 当用户单击复选框时 它应该更新标签 文本框 问题是 它不会更新标签 文本框 直到我单击执行回发的按钮 我将如何调用复选框更改事件的回发