2011-01-23 3 views
0

私は、現在表示されていない "menu"というラベルとdivを持っています。ユーザーがラベルをクリックすると、そのラベルが必要です。 divが表示されます。私はJavaScriptを介してそれをやっていると思ったが、どうすればjavascriptでコントロールを見えるようにするのだろうか?JavaScriptを使ってコントロールを可視にする

+1

、制御はJavaScriptがアクセスできないため、表示されません。 –

答えて

3

まず、クライアント側のコントロールにアクセスするには、htmlとしてレンダリングする必要があります。 Control.Visibleを使用すると、クライアント上でレンダリングされず、サーバー側でのみアクセスできます。したがって、CSSを使用してクライアントサイドの可視性を切り替える必要があります。

はdiv要素を示しています。

document.getElementById('menu').style.display = 'inherit'; 

あなたがして、それを隠すことができます:

document.getElementById('menu').style.display = 'none'; 

あなたはそれが他のNamingContainerよりの内だ時にサーバーサイド・コントロールのIDが変更される可能性があることに留意しておく必要がありますページ(GridViewまたはUserControlのfe)。だから、これは良いです

:だから、ASP.Netから生成されます、正しいIDを取得するためにControl.ClientIDを使用する必要があります

document.getElementById('<%= menu.ClientID %>').style.display = 'none'; 

ASP.Net 4.0で、クライアントIDをカスタマイズすることが可能です。詳細な情報は:コントロールは、サーバー側の可視= "false" にある場合は

関連する問題