2011-11-10 14 views
0

私は私はいくつかのトリガーを設定したいと思い、私のページ上のUpdatePanel持っている:私はバーを作っているサーバ側でUpdatePanelトリガ、__doPostBackのトリガイベントを設定する方法は?

function CloseAndSave() { 
    window.__doPostBack(CormantRadTabStrip1); 
} 

<asp:updatepanel id="updatepanel1" runat="server"> 
    <contenttemplate> 
      <asp:label id="lblfoo" runat="server /> 
    </contenttemplate> 
    <triggers> 
      <asp:asyncpostbacktrigger controlid="CormantRadTabStrip1" eventname="???" /> 
    </triggers> 
</asp:updatepanel> 

と私はいくつかの関連のjavascriptを持っているがIPostBackEventHandlerインターフェイスを実装します。

この種のイベントの明示的なイベント名はないようですね。私はイベント名を何に送るべきですか?

おかげ

public class CormantRadTabStrip : RadTabStrip, IPostBackEventHandler 
{ 
    /// <summary> 
    /// This is called when the GlobalSettings dialog window closes. 
    /// </summary> 
    /// <param name="eventArgument">JSON passed to the event representing state of tabs</param> 
    void IPostBackEventHandler.RaisePostBackEvent(string eventArgument) 
    { 
     UpdateTabs(); 
    } 
} 
+0

を以下にAsyncPostBackTriggerを修正? –

+0

barは、ページ上にあるWebコントロールです。この特定のインスタンスでは、RadTabStripから継承するクラスです - http://www.telerik.com/help/aspnet-ajax/tabstrip-overview.html 私はbarをCormantRadTabStrip1にリネームしました。 –

+0

更新パネルにありますか? –

答えて

1

eventnameあなたbar(またはCormantRadTabStrip1)コントロールがポストバックの原因となるイベントのどんなタイプでなければなりません。一般的な(デフォルトの)eventnameの値については、msdnのドキュメントを参照してください。

+0

私は(最終的に)System.Web.UI.WebControls.DataBoundControlから派生したコントロールを使用しています。デフォルトのeventname値が何であるかを知る方法はありますか? –

+0

ああ、そうだ。あなたの "イベント"は '__doPostBack()'です。うーん、それは難しい。私はあなたが 'DefaultEventAttribute'を使用させ、それを独自に判断しようとすると空白のままにしておいたのでしょうか?また、それはタイプミスか、コントロールIDを*文字列*として渡してみましたか?: '__doPostBack( 'CormantRadTabStrip1');' –

+0

それはちょっと残念です。私は、ClientIDをページ上のvarに書き込んだ後、javascriptファイルはidのvarを参照します。はい、私はそれを空白のままにしようとしたが、それはトリガしなかった。私はいくつかの読書をしましたが、すべての例では単に「クリック」を使用しています。 :)結局のところ、それはちょうど小さな最適化です...ちょうどそれがあるべきであるよりは理解するのが難しいと思った。 –

0

あなたは隠されたボタンを追加し、ウィンドウ.__ doPostBack(CormantRadTabStrip1)にOnClientClickイベントハンドラを指定することができます。

次にどこ `bar`があり、それが何である

<triggers> 
    <asp:asyncpostbacktrigger controlid="YouButtonID" eventname="ClientClick" /> 
</triggers> 
関連する問題