Onclientclick如何使用Javascript更改表格的BGcolor

时间:2012-02-19 01:59:34

标签: c# javascript asp.net html

我尝试通过Java脚本onClientClick更改表格的背景颜色。但背景并没有改变。

脚本:

<script type="text/javascript">
function compTableBGChange() {
    document.getElementById("tableComptag").style.backgroundColor = "Black";
}
</script>

我的表:

<table id="tableCompTag">
<tr>
<td>
<asp:Label ID="Label2" runat="server" Text="Computer Tag"></asp:Label>
</td>
<td>
<asp:TextBox ID="txtBxCompTag" runat="server" Width="166px" ReadOnly="True">           
</asp:TextBox>
</td>
<td>
<asp:Button ID="btnCompTagUpdate" runat="server" Text="Edit" 
onclick="btnCompTagUpdate_Click" OnClientClick="compTableBGChange()"/>
</td>
<td>
<asp:Button ID="btnCancel" runat="server" Text="Cancel" Visible="False" 
onclick="btnCancel_Click" />
</td>
<td></td>
</tr>
</table>

这有什么问题,如何解决?

2 个答案:

答案 0 :(得分:1)

您没有阻止该按钮发回服务器。因此,您应return false OnClientClick或使用HTMLInputButton代替runat=server。如果您想要回发,则应制作表格OnClientClick="compTableBGChange();return false;" 并通过HtmlTable.BgColor更改服务器端的样式。

document.getElementById

除此之外,document.getElementById("tableComptag") 对ID属性(至少in IE8in FF)执行区分大小写匹配。

所以替换

document.getElementById("tableCompTag")

{{1}}

答案 1 :(得分:1)

你如何尝试onClientClick。 参考 http://woaychee.wordpress.com/2007/09/13/call-javascript-from-aspnet-20-button-click/

 <asp:button runat="server" text="Click Me" OnClientClick="javascript:compTableBGChange()" id="myButton"></asp:button>

加上使用正确的参考。 tableCompTag