欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ExtJs 表单提交登陆实现代码

程序员文章站 2022-03-20 23:11:09
1 在子类中添加单击提交事件 复制代码 代码如下: //登陆按钮单击事件 loginfun: function() { var f = ext.getcmp("loginf...
1 在子类中添加单击提交事件
复制代码 代码如下:

//登陆按钮单击事件
loginfun: function() {
var f = ext.getcmp("loginform");
//表单验证
if (f.form.isvalid) {
f.form.submit({
waittitle: "请稍候",
waitmsg: '正在登陆...',
url: 'http://www.cnblogs.com/service/systemservice/systemservice.ashx?method=userlogin',
method: 'post',
success: function(form, action) {
window.location = 'main.htm'
},
failure: function(form, action) {
if (action.result == undefined) {
ext.msg.alert('提示', "系统出错...请联系管理员");
form.items.items[1].reset();
}
else {
ext.msg.alert('提示', action.result.rsptext);
form.items.items[1].reset();
}
}
});
}
},

2 在初始化中给登陆按钮绑定事件
复制代码 代码如下:

//初始化
init: function() {
this.loginwin.show();
ext.getcmp("loginbtn").on('click', this.loginfun);
this.loadmask = new ext.loadmask(this.loginwin.body, { msg: "页面加载中……" });
}

3.关于ext.extend
  定义:function extend(function sb,function sp,object overrides)
  简单解释:第一个参数--子类
       第二个参数--父类
       第三个参数--重写对象
  例子中 子类为 xqh.extjs.frame.app
       父类 ext.util.observable(一个抽象基类(abstract base class),为事件机制的管理提供一个公共接口。)
  更详细介绍请看(转)http://wangyu.javaeye.com/blog/210849
4.url: '//www.jb51.net/service/systemservice/systemservice.ashx?method=userlogin'
复制代码 代码如下:

public void userlogin()
{
stringbuilder jsondata = new stringbuilder();
bool success = false;
string rsptext = string.empty;
if (request["loginname"] != null && request["loginpsd"] != null)
{
string loginname = request["loginname"].trim();
string loginpsd = request["loginpsd"].trim();
xuser userenity = useraccess.getuserbyname(loginname);
if (userenity != null)
{
if (userenity.loginpsd == loginpsd)
{
success = true;
session["userenity"] = userenity;
}
else
{
success = false;
rsptext = "账号或密码错误";
}
}
else
{
success = false;
rsptext = "账号不存在,请联系管理员";
}
jsonconvert<xuser> json = new jsonconvert<xuser>();
jsondata = json.torequest(success, rsptext, userenity);
}
response.write(jsondata);
response.end();
}

注意:返回的数据必须是json格式的 success,rsptext为返回的标记 在js里通过action.result.success里调用
今天先到这里,下次来实现后台界面框架。