2011-11-04 70 views
0

我有一个GridView,里面有一些信息。当我点击其中一行时,我想将它的ClientId发送到JavaScript。如何将一行gridview的客户端id发送给javascript

C#代码:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    e.Row.Attributes.Add("onclick", "javascript:ChangeRowColor('" + e.Row.ClientID + "')"); 
} 

的JavaScript:

<script type="text/javascript"> 
    function ChangeRowColor(row) { 
     alert(row); 
</script> 

但问题是,当我点击一个排它返回"gridview1",而不是该行的ID。 如何发送GridView行ID到JavaScript?

回答

1

使用this关键字。在你的功能上下文中,this将引用该行。

e.Row.Attributes.Add("onclick", "ChangeRowColor(this)"); 

,然后通过使用id属性访问ID:

<script type="text/javascript"> 
    function ChangeRowColor(row) 
     alert(row.id); 
</script> 

附加资料

javascript:前缀是在这种背景下是不必要的。

+0

它返回Gridview1 –

+0

@mehdi,你可以显示为该行渲染的标记吗? –

+0

我如何显示? –

1

你可以通过this通过该行本身(DOM元素):

onclick="changeColor(this);" 
相关问题