2012-01-01 12 views
1

ポップアップコントロールを使用して、ポップアップを閉じるのに使用するリンクボタンを使用しています。問題は、リンクボタン(または下のコードの画像ボタン)が意図していない完全なポストバックを引き起こしていることです。誰も助けることができますか?以下はコードです。ポップアップコントロールlinkbuttonポストバックを防止する

<asp:PopupControlExtender ID="PopupControlLogin" BehaviorID="logpop" Position="Bottom" 
    TargetControlID="myLogin" PopupControlID="PanelLogin" runat="server"> 
</asp:PopupControlExtender> 
<asp:Panel ID="PanelLogin" Style="position: absolute; display: none;" runat="server"> 
    <div style="border: solid 1px #808080; border-width: 1px 0px;"> 
     <div style="background: url(images/sprite.png) repeat-x 0px -200px;"> 
      <asp:Label ID="Label2" runat="server" Style="font-weight: bold;" Text="Login" /> 
      <asp:ImageButton ID="ImageButton1" Style="background: url(images/sprite.png) no-repeat 0px -300px;" 
       OnClientClick="$find('logpop').hide(); return false;" runat="server" /> 
     </div> 
     <div style="background-color: #f2f2f2; width: 300px; height: 150px;"> 
      My Content 
     </div> 
    </div> 
</asp:Panel> 
+0

これを試したことがありますか?http://stackoverflow.com/a/2193556/618331 –

+0

Akos、私はリンクボタンの中に(あなたが言及した投稿のような)コントロールを持っていません。 – pessi

答えて

2

あなたはそれを正しく使用しているが、私はあなたのjqueryの$findにエラーがあると思います。

$('#logpop').hide(); 

または

OnClientClick="$('#logpop').hide(); return false;" 
+0

これはMicrosoft Ajaxの '$ find()'だと思います。 http://msdn.microsoft.com/en-us/library/bb397441.aspx –

+0

それを使用できません。 '.hide()'は失敗します。 –

+0

両方のコードが機能し、実際にポップアップを閉じても問題はありません。ポストバックがありません。私が言及していたことを忘れていたのは、コードがコンテンツページにあり、マスターページを利用していることです。 – pessi

0

する必要があります私はストレートHTMLリンクにボタンを変更します

<a href="#" onclick="$find('logpop').hide(); return false;"><img src="images/sprite.png" /></a> 

必要に応じて、ディスプレイを調整することができますが、これは何が必要でなければなりません。

関連する問題