jQuery AJAX 调用WebService

用jQuery调用其他项目的WebService

实现登录验证功能

html输入用户名密码:

代码
        <table style=" 400px">
            
<tr>
                
<td style=" 200px" class="left">
                    Login ID:
                
</td>
                
<td style=" 200px" class="left">
                    
<input id="txtLoginID" type="text" style=" 190px;" value="" />
                
</td>
            
</tr>
            
<tr>
                
<td style=" 200px" class="left">
                    Login Password:
                
</td>
                
<td style=" 200px" class="left">
                    
<input id="txtLoginPW" type="password" style=" 190px;" value="" />
                
</td>
            
</tr>
            
<tr>
                
<td style=" 200px" class="center">
                    
<input id="btnSignin" value="Sign in" class="button" readonly />
                
</td>
                
<td style=" 200px" class="center">
                    
<input id="btnSignup" value="Sign up" class="button" readonly />
                
</td>
            
</tr>
        
</table>

Jquery引用和登录事件

代码
<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript">
    $(document).ready(
function() 
    {
    $(
'#btnSignin').click
    (
function() 
    {
      $.ajax
      (
      {
        type: 
"POST",  
        contentType: 
"application/json"
        url: serviceURL
+"/UserLogin"
        data: 
"{UserLoginID:'"+$('#txtLoginID').val()+"',UserLoginPW:'"+$('#txtLoginPW').val()+"'}",      
        dataType: 
'json',
        success: 
function(result) 
        {
            
var user = eval(result.d);
          location.href 
= "Welcome.aspx?userID="+user.UserID    
         },
         error: 
function(result, status) 
         {
             
if(status == 'timeout'
             {
                 alert(
"The request timed out, please resubmit"); 
             }
             
else
             {
                 
if(result.responseText !="")
                 {
                     eval(
"exception = "+result.responseText);
                alert(exception.Message);
            }
          }
        }
      }
      );
    }
    );
   });
  
  $(document).ready(
function() 
    {
    $(
'#btnSignup').click
    (
function() 
    {
      location.href 
= "Signup/Signup.aspx";
    })      
   });
    
</script>

serviceURL类似:var serviceURL = "http://localhost:1742/SoldierServices.asmx";

WebService代码:

代码
    /// <summary>
    
/// Summary description for SoldierServices
    
/// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo 
= WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(
false)]
    
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    [System.Web.Script.Services.ScriptService]
    
public class SoldierServices : System.Web.Services.WebService
    {

        [WebMethod]
        
public User UserLogin(string UserLoginID, string UserLoginPW)
        {
            LoginBusiness lb 
= new LoginBusiness();
            
return lb.UserLogin(UserLoginID, UserLoginPW);
        }

        [WebMethod]
        
public User GetUserInfo(string UserID)
        {
            LoginBusiness lb 
= new LoginBusiness();
            
return lb.GetUserInfo(UserID);
        }
    }

注意:[System.Web.Script.Services.ScriptService]默认是注释的,要把注释去掉

原文地址:https://www.cnblogs.com/xh831213/p/1693889.html