0

私が取り組んでいる Web サイトには、把握できないバグがあります。

バグは以下。

2 つの異なるページがあります (機能/コントロールが異なります)。どちらにも、ログアウト ボタンを含む同じページ ヘッダーが含まれています。

<form id="Form1" method="post" runat="server">
    <uc1:pageheader id="PageHeader1" title="XXXXX" runat="server"></uc1:pageheader>
    <!-- page content goes here -->
</form>

ボタンは次のとおりです ( にありますpageHeader.ascx) 。

<INPUT type="button" value="Log out" id="btnLogout" name="btnLogout" runat="server" onserverclick="btnLogout_ServerClick">

btnLogout_ServerClick切断を処理するサーバー側関数を使用します。

ページの 1 つで、ボタンはその役割をうまく果たしています。他のbtnLogout_ServerClick機能では、機能に到達することはありません。

page_Load両方のページの機能にブレークポイントを入れようとしました。IsPostBackどちらも値が に設定された最初のパッセージから始まりTrueますが、ページ上のすべてのコントロールのロードを通過した後、最初のものはログアウト関数で終了し、もう 1 つはに設定された新しいpage_Loadサイクルを開始します。IsPostBackFalse

この動作を引き起こす可能性のあるエラー/例外の痕跡はありません。解決策を提供するか、問題を見つける方法を提供する際に誰かが手を差し伸べることができれば、それは歓迎されます.

そして、すべてのコントロールを削除して一度に 1 つずつ追加して、ボタンが機能しないかどうかを確認できることはわかっていますが、両方のページに多数のコントロールがあり、それを避けることができればいいと思います。

4

2 に答える 2

1

ブラウザツール(IE開発ツール、Firebugなど)を使用して、投稿されたデータが両方の場合で同じであるかどうかを確認します。リダイレクトがある場合は、イベントが発生する前に、他のコードがリダイレクトを行っていないかどうかを確認してください。

于 2012-07-25T12:28:06.840 に答える
0

最初にチェックするのは、ボタンのイベント ハンドラーです。正しく登録されていますか?

ポストバックで失われたユーザー コントロール イベント ハンドラーに関連している可能性があります

于 2012-07-25T10:32:22.020 に答える