单击链接按钮时如何将颜色设置为gridview的一行

时间:2014-03-06 08:12:41

标签: c# javascript

我的页面中有一个gridview。网格有一个链接按钮。如何在单击linkbutton时将颜色设置为gridview的一行?

<asp:TemplateField ItemStyle-Width="20%" HeaderText="Options" HeaderStyle-CssClass="headerfont">
                <ItemTemplate>
                    <div class="headerfontnew">

                        <asp:CheckBox ID="checkView" runat="server" Checked='<%# bool.Parse(Eval("rm_rights").ToString() == "1" ? "True": "False") %>' Enabled="true" onclick="CheckBoxCheck(this);"/>
                        <asp:CheckBox ID="checkInsert" runat="server" Checked='<%# bool.Parse(Eval("rm_rights").ToString() == "2" ? "True": "False") %>' Enabled="true" onclick="CheckBoxCheck(this);" />
                        <asp:CheckBox ID="checkUpdate" runat="server" Checked='<%# bool.Parse(Eval("rm_rights").ToString() == "3" ? "True": "False") %>' Enabled="true" onclick="CheckBoxCheck(this);"/>
                        <asp:CheckBox ID="checkDelete" runat="server" Checked='<%# bool.Parse(Eval("rm_rights").ToString() == "4" ? "True": "False") %>' Enabled="true" onclick="CheckBoxCheck(this);"/>
                     <asp:LinkButton ID="LinkButton1" CommandName="Child" CommandArgument='<%#Eval("menu_id")%>' runat="server" >

                        <img id="ChildMenu" src="images/image_viewer.png" class="Gridimage" title="View Childs" runat="server"   ></img></asp:LinkButton>

                    </div>
                </ItemTemplate>
                <HeaderStyle CssClass="headerfont"></HeaderStyle>
                <ItemStyle></ItemStyle>
            </asp:TemplateField>

2 个答案:

答案 0 :(得分:0)

如果链接在td内,请到达行(父级)并更改其颜色,如下所示

$('#linkbutton').parent().css('background-color', '#F00');

答案 1 :(得分:0)

您有两种方法可以做到:

1)在代码隐藏的服务器上。在按钮的单击事件中,假设要设置其颜色的行的索引是5,并且您想将其设置为红色:

void LinkButton_Click(Object sender, EventArgs e) 
{
    myGrid.Rows[5].BackColor = System.Drawing.Color.Red;
}

2)使用JavaScript在用户的计算机(即客户端)上。您需要使用其ID访问该行,因此请使用其ClientID属性:

<asp:LinkButton ........ OnClientClick="HighlightRow()" />

<script>
function HighlightRow() {
    document.getElementById("<%=myGrid.Rows[5].ClientID%>").style.background = "red";
}
</script>