在ASP.NET中实现鼠标移动悬停在DataGrid时高亮显示这一行的方法

 

HTML Tags and JavaScript tutorial



在ASP.NET中实现鼠标移动悬停在DataGrid时高亮显示这一行的方法




首先在WebFrom页面中添加JavaScript 代码块
//鼠标移动时高亮显示所悬停的行function SetDataGridBackColor(color,isMouseOut){var tr=event.srcElement.parentElement;var iRowIndex = tr.rowIndex ;if( isMouseOut ){if( ( iRowIndex % 2 ) == 1 ){tr.style.backgroundColor = color;}else{tr.style.backgroundColor = "#EAE9D7";}}else{tr.style.backgroundColor = color;}}
//鼠标移动时高亮显示所悬停的行function SetDataGridBackColor(color,isMouseOut){var tr=event.srcElement.parentElement;var iRowIndex = tr.rowIndex ;if( isMouseOut ){if( ( iRowIndex % 2 ) == 1 ){tr.style.backgroundColor = color;}else{tr.style.backgroundColor = "#EAE9D7";}}else{tr.style.backgroundColor = color;}}
 1
<
script
>
 2
        
//
鼠标移动时高亮显示所悬停的行
 3
        
function
 SetDataGridBackColor(color,isMouseOut)
 4
        
{
 5
            
var
 tr
=
event.srcElement.parentElement;
 6
            
 7
            
var
 iRowIndex 
=
 tr.rowIndex ;
 8
            
if
( isMouseOut )
 9
            
{
10
                
if
( ( iRowIndex 
%
 
2
 ) 
==
 
1
 )
11
                
{
12
                    tr.style.backgroundColor 
=
 color;
13
                }
14
                
else
15
                
{
16
                    tr.style.backgroundColor 
=
 
"
#EAE9D7
"
;
17
                }
18
            }
19
            
else
20
            
{
21
                tr.style.backgroundColor 
=
 color;
22
            }
23
        }
24
        
</
script
>
//鼠标移动时高亮显示所悬停的行function SetDataGridBackColor(color,isMouseOut){var tr=event.srcElement.parentElement;var iRowIndex = tr.rowIndex ;if( isMouseOut ){if( ( iRowIndex % 2 ) == 1 ){tr.style.backgroundColor = color;}else{tr.style.backgroundColor = "#EAE9D7";}}else{tr.style.backgroundColor = color;}}
//鼠标移动时高亮显示所悬停的行function SetDataGridBackColor(color,isMouseOut){var tr=event.srcElement.parentElement;var iRowIndex = tr.rowIndex ;if( isMouseOut ){if( ( iRowIndex % 2 ) == 1 ){tr.style.backgroundColor = color;}else{tr.style.backgroundColor = "#EAE9D7";}}else{tr.style.backgroundColor = color;}}
//鼠标移动时高亮显示所悬停的行function SetDataGridBackColor(color,isMouseOut){var tr=event.srcElement.parentElement;var iRowIndex = tr.rowIndex ;if( isMouseOut ){if( ( iRowIndex % 2 ) == 1 ){tr.style.backgroundColor = color;}else{tr.style.backgroundColor = "#EAE9D7";}}else{tr.style.backgroundColor = color;}}
//鼠标移动时高亮显示所悬停的行function SetDataGridBackColor(color,isMouseOut){var tr=event.srcElement.parentElement;var iRowIndex = tr.rowIndex ;if( isMouseOut ){if( ( iRowIndex % 2 ) == 1 ){tr.style.backgroundColor = color;}else{tr.style.backgroundColor = "#EAE9D7";}}else{tr.style.backgroundColor = color;}}
然后在aspx文件中的DataGrid事件中去注册这个脚本
    
private
 
void
 dgTemp_PreRender(
object
 sender, System.EventArgs e)
        
{
            
for
 (
int
 i 
=
 
0
 ; i 
<
 dgTemp.Items.Count; i
++
)
            
{
                dgTemp.Items[i].Attributes.Add(
"
onmouseover
"
,
"
SetDataGridBackColor('LightBlue',false);
"
);
                dgTemp.Items[i].Attributes.Add(
"
onmouseout
"
,
"
SetDataGridBackColor('white',true);
"
);
            }
        }
为了防止DataGrid标头的滚动,可以在增加这么一个脚本
        
private
 
void
 dgTemp_ItemCreated(
object
 sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
        
{
            
//
使DataGrid标头不滚动
            
if
 (e.Item.ItemType 
==
 ListItemType.Header)
            
{
                e.Item.Style.Add(
"
position
"
,
"
relative;top:expression(document.all['dgBHGJBSZ'].offsetParent.scrollTop);
"
);
            }
        }
链接地址:
http://Arthur1999.cnblogs.com/archive/2006/07/14/450487.html
 


阅读更多
上一篇通过ADO.NET存取文件
下一篇WinCE应用程序开发常见问题解答(三)(转载)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭