今天在论坛看到一个问题,问的是如何实现 TreeView 控件在不回发的情况下,实现各种功能。既然不要求回发,只能使用客户端的脚本来实现了,下面就是完整的代码。
class=csharp name="code">
"Courier New">"C#" AutoEventWireup="true" %>
ttp://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("刷新标记:" + DateTime.Now.Ticks.ToString());
TreeView1.Attributes.Add("onclick", "getNode(event);");
}
http://www.w3.org/1999/xhtml">
TreeView 控件之不回发操作
var foo = null;
function getNode(evt)
{
evt1 = window.event ? window.event.srcElement : evt.target;
if(evt1.tagName && evt1.tagName != "INPUT")
{
if(evt1.tagName == "IMG")
{
return true;
}
else
{
if(foo) foo.style.color="#00F"; //最初的颜色
evt1.style.color="#f0f0f0"; //如果要其他单击变换颜色,调整这3的位置即可,应该不用再说了吧???
foo = evt1;
var sb = evt1.previousSibling;
if(sb.tagName == "INPUT")
{
var imgPlus = document.getElementById(sb.id.replace(/CheckBox/gi,""));
if(imgPlus)
{
eval(imgPlus.href)
}
}
if(window.event)
{
window.event.returnValue=false;
return false;
}
else
{
evt.preventDefault();
evt.stopPropagation();
}
}
}
}
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/12639172/viewspace-332670/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/12639172/viewspace-332670/