2012-02-08 15 views
0

他の誰かが書いたコードでは、あまり変更できないと書いています。バックスラッシュコードで非ASPテーブルを非表示にする

それは、このような何かHTMLで定義されたテーブルを持っている:私はこのテーブルとそのすべての内容を非表示にすることの背後にあるコードを使用したいが、私は私が対処することはできません気づく

<table id="tblResult"> 
    some stuff defined in here. 
</table> 

をコードの背後にあるtblResult.visibleとしてテーブルを直接。これはaspオブジェクトではないので、これは意味があります。これを単にasp:tableに変更するだけでは、テーブル内で何かのことが起こるので、私は混乱しない方がいいです。そのテーブルに対処し、裏コードからの可視性をfalseに設定することは可能ですか?

答えて

3

<asp:PlaceHolder> amdにラップし、プレースホルダの表示を切り替えます。

+0

runat = server属性を追加すると、クライアントで生成されたid属性を変更できます。 –

1

タグにrunat='server'を追加します。あなたのコードビハインドに続いて

<div id='myDiv' runat='server'> 
<table id="tblResult"> 
    //stuff 
</table> 
</div> 

:あなたがすることができる他の事はなど、DIV、パネルのサーバ側タグのまわりでそれをラップし、visible='false'にこの効果に何かをそれらを設定している

this.myDiv.Visible=False;

これで、テーブルが表示されなくなりました。繰り返しますが、div、パネル(実際にはdivです)、リテラル、プレースホルダなどを使用することもできます。

+0

。このケースでは、私が言ったようにプレースホルダを使用するのが最善の解決策だと思います。 –

+0

クラッシュについてはわかりませんが、さまざまなタグを使用できると述べました。要は、特定のオブジェクトのコードビハインドにアクセスする必要があります。これを行う最も簡単な方法は、現在のテーブルにrunat = 'server'を追加することです。彼は栄光に満ちたASP.netテーブルやプレースホルダを使用する必要は全くありません。 – JonH

0

あなたはLiteralでそれをラップすることができます:彼はスクリプト/スタイルのクラッシュを引き起こす可能性がdiv要素の挿入

<asp:Literal runat="server" ID="Literal1" Visible="False"> 
<table> ... </table> 
</asp:Literal> 
関連する問題