我有一个使用ASP.net Tree View Web控件的网页。由于网页当前已编程,当用户点击树视图上的节点时,页面会回发并执行C#函数来处理事件。
点击树视图节点后,我可以让我的网页运行一些Javascript代码而不回发吗?
更新:假设我的页面如下所示。如何才能使点击node_A
由Javascript客户端而不是C#服务器端处理?
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" Inherits="WebApplication3.WebForm2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<body>
<form id="form1" runat="server">
<div>
<asp:TreeView runat="server" ID="myTreeView">
<Nodes>
<asp:TreeNode Text="node_A" Value="1" />
<asp:TreeNode Text="node_B" Value="2" />
<asp:TreeNode Text="node_C" Value="3" />
</Nodes>
</asp:TreeView>
</div>
</form>
</body>
</html>
答案 0 :(得分:2)
在元素上绑定点击事件,获取事件对象并调用preventDefault()
。
element.onclick = function(e) {
var evt = window.event || e;
evt.preventDefault();
/* Your code */
}
jQuery快捷方式
$("element").click(function(e){ e.preventDefault(); });
答案 1 :(得分:0)
你有没有尝试过:
EnableViewState =“False”
或
你可以删除runat服务器吗?