前台HTML文件代码(Register.aspx):
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Scripts/jquery-1.7.2.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
function CheckCode() {
AJAX_Work.WebService1.CheckCode($('#txtName').val(), onSuccess, onFailed);
}
function onSuccess(result) {
if (result == true) {
$('#yanzheng').append('<a style="color:green;"><samp>用户名可以使用!</samp></a>');
}
else {
$('#yanzheng').append('<a style="color:red;"><samp>用户名不可以使用!</samp></a>');
}
}
function onFailed() {
alert('调用失败');
}
$('#txtName').blur(function () {
//调用上面的方法。
CheckCode();
})
})
</script>
//页面比较简单,表格也是鼠标拖成的这些是自动生成的一些个样式
<style type="text/css">
.style1
{
width: 100%;
}
.style2
{
width: 157px;
}
.style3
{
width: 67px;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
//引用Web服务文件
<asp:ServiceReference Path="~/WebService1.asmx" />
</Services>
</asp:ScriptManager>
<div>
<table class="style1">
<tr>
<td align="left" class="style3">
用户名:
</td>
<td class="style2">
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
</td>
<td id="yanzheng">
<asp:Label ID="Label1" runat="server" ForeColor="Red" Text="*"></asp:Label>
</td>
</tr>
<tr>
<td align="left" class="style3">
密 码:
</td>
<td class="style2">
<asp:TextBox ID="txtPass" runat="server"></asp:TextBox>
</td>
<td>
</td>
</tr>
<tr>
<td align="left" colspan="2">
<asp:Button ID="Button2" runat="server" Text="注 册" XonClick="Button2_Click" />
</td>
<td>
</td>
</tr>
</table>
</div>
<div id="newdiv">
</div>
</form>
</body>
</html>
下面是Web服务文件的内容
Web服务文件(WebService1.asmx):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Configuration;
using System.Data.SqlClient;
namespace AJAX_Work
{
/// <summary>
/// WebService1 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
[System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
string str = ConfigurationManager.ConnectionStrings["sqlcon"].ConnectionString;
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
//这里是查询数据库中是否有相同的记录,如果有则返回布尔值False表示当前的值是不可用的
[WebMethod]
public bool CheckCode(string name)
{
SqlConnection sqlcon = new SqlConnection(str);
SqlCommand sqlcom = sqlcon.CreateCommand();
sqlcon.Open();
sqlcom.CommandText = "select count(*) from T_Users where Uname=@name";
sqlcom.Parameters.AddWithValue("@name",name);
int obj=Convert.ToInt32( sqlcom.ExecuteScalar());
sqlcon.Dispose();
sqlcom.Dispose();
if (obj != 0)
{
return false;
}
else
{
return true;
}
}
}
}
页面功能较为简单,具有可扩展性!