вызов метода на стороне сервера в JQuery в asp.net - PullRequest
1 голос
/ 31 октября 2009

в моем приложении у меня есть форма, где пользователь вводит свое имя пользователя первым. Теперь я должен проверить, доступно ли это имя пользователя или нет, у меня есть метод «имя пользователя», который делает это, возвращая true или false в качестве возвращаемого типа. здесь я делаю, используя jQuery с ajax для достижения этой концепции. когда пользователь вводит это имя и когда он набирает второе текстовое поле, этот код должен быть выполнен и выдать ему результат в виде всплывающего окна [moda popup]. если возвращаемое значение истинно из метода «username» из имени пользователя, которое уже используется, необходимо отобразить сообщение «username alredy in use» если возвращаемое значение ложно "не нужно отображать"

сейчас мой код выглядит так

<head>
  <title>Calling an ASP.NET Page Method with jQuery</title>
  <script type="text/javascript" src="jquery-1.2.6.min.js"></script>
<script type="text/javascript">

      $(document).ready(function() {    
          $.ajax({    
              type: "POST",    
              url: "Default.aspx/Username",    
              contentType: "application/json; charset=utf-8",    
              data: "{}",    
              dataType: "json",    
              success: OnSuccess,    
              error: OnFailure    
          });    
    });

      function OnSuccess(result) 
      {
         // so  here i need   to  check  whethere  true  or false
         // based on that i need   to  show  modal  pop  up
          alert("Success!");    
      }

      function OnFailure (result)    
      {
          alert("The call to the page method failed.");    
      }    
  </script>    
</head>

было бы замечательно любое решение по этому вопросу. спасибо

1 Ответ

2 голосов
/ 31 октября 2009
<asp:TextBox id="txtUserName" runat="server"/>
<div id="divPrompt" style="display:none">User Name alredy in use</div>
<input id="otherText"...../>

<script type="text/javascript">
$(document).ready(function(){
    $("#<%= txtUserName.ClientID%>").blur(function(){
       $.ajax({    
              type: "POST",    
              url: "Default.aspx/Username",    
              contentType: "application/json; charset=utf-8",    
              data: "{}",    
              dataType: "json",    
              success: function (msg){
                  if(msg.hasOwnProperty("d")){
                     OnSuccess(msg.d);
                  } else{
                     OnSuccess(msg);
                  }
              },
              error: OnFailure
          });    
    });
});

  function OnSuccess(result) 
  {
     if(result.UserNameInUser)
       $("div#divPrompt").show();
     else
       $("div#divPrompt").hide();
  }

  function OnFailure (result)    
  {
      alert("The call to the page method failed.");    
  }    
</script>
...