用jQuery調用其他項目的WebService
實現登入驗證功能
html輸入使用者名稱密碼:
代碼
<table style="width: 400px">
<tr>
<td style="width: 200px" class="left">
Login ID:
</td>
<td style="width: 200px" class="left">
<input id="txtLoginID" type="text" style="width: 190px;" value="" />
</td>
</tr>
<tr>
<td style="width: 200px" class="left">
Login Password:
</td>
<td style="width: 200px" class="left">
<input id="txtLoginPW" type="password" style="width: 190px;" value="" />
</td>
</tr>
<tr>
<td style="width: 200px" class="center">
<input id="btnSignin" value="Sign in" class="button" readonly />
</td>
<td style="width: 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]預設是注釋的,要把注釋去掉