ユーザーがテキストボックスに入力すると非表示にするASP.Net 4.0 Webサイトにラベルがあります。KeyPressのJavascriptでASP.Netラベルを非表示にする
私は、テキストボックスのKeypresseventで実行しているJavascript関数を持っています。
function hideLabel(sender, e) {
document.getElementById('<%=lblResult.ClientID%>').style.display = 'none';
}
そして、次のように私のテキストボックスとラベルは、次のとおりです:
だから、私のJavascriptの機能がある
<tr><td>
<asp:Label ID="lblResult" runat="server" Visible="True"></asp:Label>
</td></td>
<tr><td>
<asp:TextBox ID="txtEmailAddress" runat="server" Width="200px"
CssClass="customtxt" onkeypress="hideLabel(this, event)"></asp:TextBox>
</td></td>
機能の火を、私は次のエラーが表示されます。Microsoft JScriptのランタイムエラー:オブジェクト必要です
私の関数内で以下のコード行を試しましたが、これはどちらでも動作しません:
document.getElementById('lblResult').style.visibility = 'hidden';
IE 8でこれがなぜ失敗しているのか誰にも分かりません。Chromeでは正しく動作しています。
2つのポイント:1)あなたが行ったようにラベルが定義されているので、実際には Text here 'とレンダリングされています。代わりに '
2回目のJS試行は機能しません:あなたが書いたとおりにコントロールにはIDがないでしょう(あなたはClientIDプロパティを使用する権利があります)。Visibilityは存在しないASP.NETプロパティですDOMの中で。 –