нажатие клавиши не работает после обратной передачи в ASPX - PullRequest
3 голосов
/ 16 апреля 2011

У меня есть изображение рядом с текстовым полем на странице ASPX.Я в VS2010 разрабатываю веб-форму с использованием jquery.Прежде чем я нажму кнопку на моей странице, мое изображение исчезнет, ​​когда я нажимаю любую клавишу и когда я нахожусь внутри текстового поля.Таким образом, все работает хорошо, прежде чем отправлять обратно.

Однако после того, как я отправил назад и нажал любую клавишу внутри текстового поля, мое изображение не исчезло.Спасибо за любые предложения.

   <script type="text/javascript">

   $(document).ready(function () {
             $('#tbPassword').keypress(function () {
                 $('#imgPassword').hide();
              });
   });

   </script>

   <tr>
                        <td class="style53">
                            <asp:UpdatePanel ID="uppPassword" 
                                             runat="server">
                            <ContentTemplate>
                                <asp:TextBox ID="tbPassword" 
                                             runat="server" 
                                             TextMode="Password" 
                                             Width="200px">
                                 </asp:TextBox>&nbsp;&nbsp
                            <asp:Label ID="lblPWCharacters" 
                                       runat="server" 
                                       CssClass="Label8g" 
                                       Text="(at least 6 characters)">
                            </asp:Label>
                            </ContentTemplate>
                            <Triggers>
                                <asp:AsyncPostBackTrigger       ControlID="btnSignUp"

                              EventName="Click" />
                            </Triggers>
                            </asp:UpdatePanel></td>
                        <td align="left" class="style52" valign="baseline">
                            <img id="imgPassword" src="../Images/Red-Error-con.png" /></td>
                    </tr> <td class="style53"><asp:Button ID="btnSignUp" 
                                                        runat="server" 
                                                                                                                                                   Text="Sign up"
                                                        Width="88px"  
                                                        TabIndex="2000" 
                                                        OnClientClick="validateText()"/>
                            </td>
                        <td class="style52">
                            &nbsp;</td>

   function validateText() {

   //not null password 
            if ($("#tbPassword").val()) {
                passwordValid();
            }
   }

1 Ответ

3 голосов
/ 16 апреля 2011

Вам нужно повторно инициализировать его при каждом обновлении. Вы можете сделать это, захватив события с панели обновлений.

var prm = Sys.WebForms.PageRequestManager.getInstance();    
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);

function InitializeRequest(sender, args) {      
}

function EndRequest(sender, args) {
            $('#tbPassword').keypress(function () {
                 $('#imgPassword').hide();
              });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...