0

Web ページにハイパーリンクがあり、テキストが「パスワードを忘れた」に設定されています。

ハイパーリンクをクリックすると、パスワード回復コントロールがポップアップします (AJAX ModalPopUp エクステンダーの実装を使用)。

エクステンダーのポップアップは非常にうまく機能し、パスワード回復コントロールを表示できます。ただし、ユーザー名 (UserNameTemplate ステップにあります) を入力して「送信」ボタンを押すと、コントロールは 2 番目と 3 番目のステップ (QuestionTemplate と成功テンプレートである必要があります) に進みません。

ModalPopUp エクステンダを使用せずにパスワード回復コントロールを Web ページに配置しようとしましたが、回復コントロールは正常に動作します。

これが私のコードです:(太字の単語は関連するコードです)

<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager>

<asp:LoginView ID="LoginView1" runat="server" >

<AnonymousTemplate>

<asp:HyperLink ID="HyperLink2" runat="server">Forget Password</asp:HyperLink> 

<asp:ModalPopupExtender ID="HyperLink2_ModalPopupExtender" runat="server" Enabled="True" TargetControlID="HyperLink2" PopupControlID="Panel1">      </asp:ModalPopupExtender>

 <asp:Panel ID="Panel1" runat="server" BorderColor="Black" CssClass="Panel1" >      <asp:PasswordRecovery ID="PasswordRecovery1" runat="server"> </asp:PasswordRecovery> 

 <asp:Button ID="btnOk" runat="server" Text="Ok"/> </asp:Panel>
  </AnonymousTemplate>
 </form> 

modalpopup エクステンダー内にある場合、パスワード回復コントロールが正常に機能しないのはなぜですか? これを解決する他の方法はありますか??

4

1 に答える 1

0

さて、これは、モーダルポップアップが送信時にデフォルトで非表示に設定されているためです。したがって、ボタンを押すとすぐに、その特定のフォームが送信され、非表示になります。

できることは、ボタンクリックイベントで、必要なステートメント(必要な場合)の後に、次のコード行を含めることです。

HyperLink2_ModalPopupExtender.Show();
  • HyperLink2_ModalPopupExtenderは、ModalPopupExtenderコントロールのIDです。
于 2012-06-28T17:44:26.443 に答える