Client/Views/Admin/reg.tpl
这里有个form标签.有用
在button中,添加 data-value="T".用来传递给客户端,所选的div的值是T
<div name="teacher" class="row" style="position:absolute;top:0px;display:none;top:0px;">
<form class="login-wrap" style="border: 1px solid #e0e0e0; border-radius:8px;" οnsubmit="return false;">
<input type="text" class="form-control" data-item="user" placeholder=" 邮箱/手机号" autofocus>
<input type="password" class="form-control" data-item="pwd" placeholder="密码">
<input type="password" class="form-control" data-item="repwd" placeholder="确认密码" autofocus>
<input type="text" class="form-control" data-item="realname" placeholder="真实姓名">
<div class="form-control" style="margin-bottom:15px; border:0px;padding: 0px;" >
<select class="selectpicker" data-item="subject" style="width:inherit;height:30px;">
<option>选择年级</option>
<option>GRADE ONE</option>
<option>GRADE TWO</option>
<option>GRADE THREE</option>
<option>GRADE FOUR</option>
</select>
</div>
<div >
<button type="submit" on="genId" id="dropdownMenu1" class="pull-right" style="border-radius:5px;height:40px ; width:35%;">获取验证码
</button>
<input type="password" class="form-control" data-item="vcode" class ="pull-left" style="width:60%;" placeholder="请输入验证码" />
</div>
<div tpl="alert">
{@if info}
<tpl name="alert">
<div class="alert alert-warning" role="alert">${info}</div>
</tpl>
{@/if}
</div>
<div id="tea"></div>
<label class="checkbox" style="font-size:12px; height: 12px;" >
<input type="checkbox" value="remember-me" style="height: inherit;">我已同意<使用协议>
</label>
<button class="btn btn-login btn-block" type="submit" on="signin" data-item="type" data-value="T">注册</button>
<button class="btn btn-block" type="submit" on="ByRet1">取消</button>
</form>
</div>
signin: function(sender) { //查询数据
var vals = app.gui.vals(sender.form);
console.info(vals);
var role = dist_role(vals.type);
if (detec(vals, role)) {
var hash = CryptoJS.HmacSHA256(vals.pwd, vals.user);
_.ajax({
type: "GET",
url: "api/admin/reg/data",
data: {
user: vals.user,
pwd: hash.toString(CryptoJS.enc.Base64),
realname: vals.realname,
vcode: vals.vcode,
utype: dist_role_num(vals.type),
},
dataType: "json",
success: function(r) {
if (r.successTag) {
app.gui.refresh("task");
// app.tpl("Admin->reg.alert", function(tpl) {
// var infom = tpl({
// info: " login success "
// }, {});
// _("#xxx").html(infom);
// });
// return;
} else {
app.tpl("Admin->reg.alert", function(tpl) {
var infom = tpl({
info: r.status
}, {});
_(role).html(infom);
});
return;
}
}
});
}
},
dist_role:是转化#xxx 用于选择<div id="xxx"></div>
dist_role_num:是转化值 用户存储数据库中
下面是函数方法
function display(position, message) {
app.tpl("Admin->reg.alert", function(tpl) {
var infom = tpl({
info: message
}, {});
_(position).html(infom);
});
return;
}
//distinct the role as num
function dist_role(e) {
if (e == "T") {
return "#tea";
}
if (e == "S") {
return "#stu";
}
if (e == "P") {
return "#par";
}
}// end of dist_role
//distinct the role as num
function dist_role_num(e) {
if (e == "T") {
return 1;
}
if (e == "S") {
return 2;
}
if (e == "P") {
return 3;
}
} //end of dist_role_num
//display the error
function detec(vals, role) {
if (vals.user === "") {
display(role, "请输入用户名!");
return false;
}
if (vals.pwd === "") {
display(role, "请输入密码!");
return false;
}
if (vals.repwd === "") {
display(role, "请输入确认密码");
return false;
}
if (vals.pwd !== vals.repwd) {
display(role, "两次密码不一致,请重新输入!");
return false;
}
if (vals.realname === "") {
display(role, "请输入真实姓名!");
return false;
}
if (vals.vcode === "") {
display(role, "请输入验证码");
return false;
}
return true;
} //end of detec