我有一个树视图,我想要点击任何childnodes没有回发。我将获得选择的childnode值。 当我设置“node_.SelectAction = TreeNodeSelectAction.None;”时,我找到了一个解决方案。我无法选择任何子节点,也没有突出显示。
等待你的帮助。关于我的恩惠。
.aspx的:
<asp:TreeView ID="TreeView1" runat="server"></asp:TreeView>
CS:
TreeView1.Nodes.Clear();
TreeView1.TreeNodeExpanded += new TreeNodeEventHandler(TreeView1_TreeNodeExpanded);
DataTable dt = ImzaDll.Imza.KategorileriGetir(true);
foreach (DataRow row in dt.Rows)
{
TreeNode node_ = new TreeNode();
node_.Text = row["ACIKLAMA"].ToString();
node_.Value = row["KATEGORI"].ToString();
TreeView1.Nodes.Add(node_);
}
void TreeView1_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
{
addChildNodes(e.Node);
}
private void addChildNodes(TreeNode node)
{
DataTable dt = ImzaDll.Imza.KutuphaneBasliklariGetir(true, node.Value.ToString());
foreach (DataRow row in dt.Rows)
{
TreeNode childNode = new TreeNode();
childNode.Text = row["BASLIK"].ToString();
childNode.Value = row["KUTUPHANE_ID"].ToString();
childNode.ToolTip = row["BASLIK"].ToString() + " kütüphanesini ekle";
childNode.Target = "_new";
node.ChildNodes.Add(childNode);
}
}
答案 0 :(得分:6)
您可以设置treeview子节点的CSSClass 喜欢
<asp:TreeView LeafNodeStyle-CssClass="childnode" runat="server">....</asp:TreeView>
然后使用jquery你得到类并设置return false,如下所示。
$(".childnode").click(function(){
return false;
})
...同样的方法你可以设置RootNodeStyle-CssClass,ParentNodeStyle-CssClass类并使用jquery来设置它们......
答案 1 :(得分:0)
您可以删除链接('a')标记属性的href以停止回发
typeof [1,2,3] == 'object'
这里有步骤说明:
答案 2 :(得分:0)
TreeNode tn = new TreeNode();
tn.SelectAction = TreeNodeSelectAction.None; OR tn.SelectAction = TreeNodeSelectAction.Expand;
这两种方法都不会导致回发。