今天主要介绍关于TreeNodeCheckChanged如何通过事件触发,通过示例代码详细的介绍,应该对大家的学习或工作有一定的参考学习价值,有需要的朋友可以参考
此事件不会主动回发,需要通过手动编写javascript来触发。对网上找到的方法做了一些改进,增加了UpdatePanel,避免不断刷页面。这里我不考虑性能,因为现在项目已经允许选择TreeView服务器控件,我不关心多一个UpdatePanel。
前台页面
<html>
<head runat="server">
<title></title>
<script type="text/javascript">
function postBackByObject() {
var o = window.event.srcElement;
if (o.tagName == "INPUT" && o.type == "checkbox") {
//第一个参数写UpdatePanel的ID,否则就是整个页面刷了
__doPostBack("UpdatePanel1", "");
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:TreeView runat="server" ID="treeView1"
OnTreeNodeCheckChanged="treeView1_TreeNodeCheckChanged">
</asp:TreeView>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
</html>
后台页面
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack www.20231128.com )
{
treeView1.Attributes.Add("onclick", "postBackByObject()");
}
}
文章来自脚本之家