2012-01-04 4 views
1

私はUserControlページで(TextBox、ドロップダウンリスト)のようなASP.Netコントロールを使用しています。同じページに編集用のリンクボタンがあります。私はそれを顧客側に見せたい。いずれにしても私はどうすればいいのでしょうか?または他の方法で作成することができます。あなたがLinkBut​​tonコントロールのonClick属性を削除し、代わりにJavaScript関数を呼び出すためにOnClientClick属性を使用したいと思うのJavascriptでこれを行うにはLinkBut​​tonのonClick peropertyを使用して、クライアントサイドでasp.netコントロールを可視にします。

+0

は、一般的に編集ボタンを使用すると、その後、他のコントロールの可視= Trueの – Prescott

+0

ありがとう、はいそれはpostbackingさを設定することができポストバックが発生します。私はポストバックしないクライアント側が必要なので。私は別々に編集可能な20以上のコントロールを持っています。ですから、私はonClickイベントを適用するためにクライアント側の関数が必要です。何か方法はありますか? –

+0

[AJAX](http://msdn.microsoft.com/en-us/library/ee341002.aspx)機能を使用しようとしましたか? [UpdatePanel](http://msdn.microsoft.com/en-us/library/system.web.ui.updatepanel.aspx)にコントロールを囲むと、代わりにクライアント側の呼び出しを行うように編集ボタンを有効にすることができます通常のポストバックの – CedX

答えて

4

<asp:LinkButton ID="lb_link_button" runat="server" Text="Click Me" OnClientClick="return ToggleShowHide()"/> 

はここ/非表示Aを表示するには、対応するJavaScript関数ですそのstyle.displayプロパティを使用してmy_controlという名前のコントロール:

<script type="text/javascript">   
    function ToggleShowHide() { 
     var control = document.getElementById("<%= my_control.ClientID %>"); 
     if (control.style.display == "none") { control.style.display = "block"; } 
     else { control.style.display = "none"; } 
     return false; 
    } 
</script> 

あなたはさまざまな方法で表示/非表示するコントロール(複数可)を参照することができ、これは単純な例です。

可視/不可視を設定するコントロールは、ではなく、のVisibleプロパティをfalseに設定する必要があります。代わりにdisplay:none;と宣言する必要があります。スタイルは次のように:

<asp:Control runat="server" ID="my_control" Visible="true" style="display:none;"/> 
関連する問題