当前位置: 移动技术网 > IT编程>开发语言>.net > JQuery运用ajax注册用户实例(后台asp.net)

JQuery运用ajax注册用户实例(后台asp.net)

2017年12月12日  | 移动技术网IT编程  | 我要评论

插件崩溃,管理学 在职研究生,空间互踩

复制代码 代码如下:

//js代码

function checkname() {
var msg = document.getelementbyid("d_username");
var chk = checkn();
if (chk) {
$.ajax({ url: 'registerok.aspx',
type: 'post',
data: { lb: "checkname", username: $("#username").val() },
datatype: 'html',
timeout: 1000,
error: function() { alert('出现未知错误,请与qq:6434789联系。'); },
success: function(data) {
if (data == "对不起,该用户名已被注册!") {
msg.classname = "d_err";
msg.innerhtml = data;
$("#hiddencheckname").val("no");
}
if (data == "恭喜,该用户名可以注册!") {
msg.classname = "d_ok";
msg.innerhtml = data;
$("#hiddencheckname").val("yes");
}
if (data == "该用户名不能为中文!") {
msg.classname = "d_err";
msg.innerhtml = data;
$("#hiddencheckname").val("no");
}
if (data == "请输入用户名!") {
msg.classname = "d_err";
msg.innerhtml = data;
$("#hiddencheckname").val("no");
}
}
});
}
}

function checkn() {
var msg = document.getelementbyid("d_username");
var chk = true;
if (checkischinese(document.getelementbyid("username").value)) {
msg.classname = "d_err";
msg.innerhtml = "用户名不能为中文!";
chk = false;
}
if (document.getelementbyid("username").value.length < 4) {
msg.classname = "d_err";
msg.innerhtml = "用户名不能少于4个字符!";
chk = false;
}
return chk;
}

function chk_reguser() {
var chk = true
// if (!checkname()) { chk = false; } //jquery进行变量赋值不能与js里面的变量共用,故success: function(data) {}里面定义的任何变量与所在的js代码中的变量是不相通的,所以我就找一个种比较偏(非正式)的方法,为在html中加入隐藏的input并在js里面设置$("#hiddencheckname").val("no");
if (!checkn()) {chk = false;}
if ($("#hiddencheckname").val() == "no") { chk = false; }//这个是对其判断
if (!checkpwd()) { chk = false; }//这些跟checkn()差不多一样,只是对表单里面的元素进行验证
if (!checkpwd1()) { chk = false; }
if (!checkquestion()) { chk = false; }
if (!checkanswer()) { chk = false; }
if (!checkxq()) { chk = false; }
if (!checkrealname()) { chk = false; }
if (!checktel()) { chk = false; }
if (!checkqqmsn()) { chk = false; }
if (!checkemail()) { chk = false; }
if (!checkaddress()) { chk = false; }
if (chk) {
$.ajax({ url: 'registerok.aspx',
type: 'post',
data: { lb: "reguser", username: $("#username").val(), password: $("#pwd").val(), question: $("#question").val(), answer: $("#answer").val(), xqcode: $("#ctl00_cph_main_ddl_xq").val(), realname: $("#realname").val(), sex: $("input[@name=sex][@checked]").val(), tel: $("#tel").val(), qqmsn: $("#qqmsn").val(), email: $("#email").val(), address: $("#address").val() },
datatype: 'html',
timeout: 1000,
error: function() { alert('出现未知错误,请与qq:6434789联系。'); },
success: function(data) {
if (data == "success") {
alert("注册成功!");
window.location.href = "/member/index.aspx";
}
else {
alert("注册失败,原因可能为用户名已被注册!");
}
}
});
return (true);
}
return (false);
}

//html页

只要做类似于这样的表单
复制代码 代码如下:

<input id="username" type="text" onblur="checkname()" />
<div class=d_default id=d_username>请输入4位以上的英文字符或数字!</div>
<input id="button_ok" type="button" onclick="return chk_reguser();"/>

//registerok.aspx.cs
复制代码 代码如下:

using system;
using system.collections.generic;
using system.linq;
using system.web;
using system.web.ui;
using system.web.ui.webcontrols;
using bll;

public partial class registerok : system.web.ui.page
{
user user = new user();
protected void page_load(object sender, eventargs e)
{
if (!ispostback)
{
string lb = request["lb"];
string username = request["username"];
string password = request["password"];
string question = request["question"];
string answer = request["answer"];
string xqcode = request["xqcode"];
string realname = request["realname"];
string sex = request["sex"];
string tel = request["tel"];
string qqmsn = request["qqmsn"];
string email = request["email"];
string address = request["address"];
if (lb == "checkname")
{
response.write(user.checkusername(username));
}
if (lb == "reguser")
{
string name = user.checkusername(username);
if (name == "恭喜,该用户名可以注册!")
{
user.add(username, password, question, answer, xqcode, realname, sex, tel, qqmsn, email, address);
response.write("success");
}
else
{
response.write("fail");
}
}
}
}
}

注:registerok.aspx页面必须清空所有的html代码,如只剩下<%@ page language="c#" autoeventwireup="true" codefile="registerok.aspx.cs" inherits="registerok" %>。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网