2012-02-19 9 views
0

JavaスクリプトonClientClickを使用してテーブルの背景色を変更しようとしています。しかし、背景は変わらない。Onclient Javascriptを使用してテーブルのBG色を変更する方法をクリック

スクリプト:

<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> 

これは何で間違っていると私はそれをどのように修正することができますか?

答えて

1

ボタンがサーバーにポストバックするのを妨げているわけではありません。したがってreturn falseからOnClientClickまで、または代わりにHTMLInputButtonを使用してください。ポストバックしたい場合は、テーブルrunat=serverを作成し、サーバ側のスタイルをHtmlTable.BgColorで変更する必要があります。それとは別に

OnClientClick="compTableBGChange();return false;" 

document.getElementByIdはID属性(少なくともin IE8in FF)に大文字と小文字を区別マッチを行います。

ですから、onClientClickを試す方法について

document.getElementById("tableCompTag") 
+0

バックグラウンドが1秒間だけ変化します(私は変更を見るチャンスもありません)。 – Sas

+1

@Sas:はい、それはポストバックのためです(私の編集を参照)。 –

+0

それは働く... !!!!私は今、ファイルの背後にあるC#コードからテーブルにアクセスでき、Javaスクリプトは不要です。あなたの助けに感謝します。 – Sas

関連する問題