Extjs.form.Action.submit 的问题
一段用户验证的JS运行环紧时Extjs3.4,之前用Ajax.request的办法但是在Chrome中会因为异步的问题,g验证失败,现在向改form..Action.su...
一段用户验证的JS 运行环紧时 Extjs3.4,之前用Ajax.request 的办法但是在Chrome 中会因为异步的问题,g验证失败,现在向改 form..Action.submit 的办法,但是搞不定 以下是我写的form submit的,那位大大能帮我看看那里错了么?
Ext.form.Action.Submit({
url: 'http://10.86.116.58/planning/Json/promisschk.aspx',
params: {user: name, program_id: 121},
method: 'post',
success: function(form, action) {
tvalue = action.result.success;
},
failure: function(form, action) {
//Ext.MessageBox.alert("Warning!!", 'system error!!');
tvalue = 'System Error!!!';
}
}); 展开
Ext.form.Action.Submit({
url: 'http://10.86.116.58/planning/Json/promisschk.aspx',
params: {user: name, program_id: 121},
method: 'post',
success: function(form, action) {
tvalue = action.result.success;
},
failure: function(form, action) {
//Ext.MessageBox.alert("Warning!!", 'system error!!');
tvalue = 'System Error!!!';
}
}); 展开
2个回答
2014-03-26 · 知道合伙人软件行家
关注
展开全部
呃,分2种方法解决
1是可以设定ajax.request为同步
Ext.Ajax.request({
url: 'xxx',
params: {id: 1},
async: false,
success: function(response){}
});
2是调用form的submit方法,要说明的是,这里的方法,只对用extjs构造的form组件有效
var form = Ext.create('Ext.form.Panel', {});
form.submit({
url: 'xxx',
success: function(form, action) {
},
failure: function(form, action) {
}
});
我很纳闷,验证表单和同步异步提交数据有什么关系。。。
要验证表单,直接用form的isValid方法验证即可
var form = Ext.create('Ext.form.Panel', {});
if (form.getForm().isValid()) {
//验证通过
}
你的写法,从语法来说是没问题的,可是也仅仅是重写了form的submit方法,并没有真正地调用
多看看EXTJS的API吧,希望对你有帮助
追问
谢谢。因为在 Extjs 3.4.0的环境里 chrome 不支持 async: false,我有找来一个据说支持chrome的ext-basex.js,但是 这个chrome直接无视,IE OK。我要验证的不是表单,而是已经在Session里的用户是否有授权访问页面上的某个特定功能。不过看了你的第二条的方案给了我灵感,我试试看,验证时创建个form 来提交数据看看行不行。
追答
我懂你的意思了
我觉得你可以直接在后台验证session是否过期啊
有session继续操作
无session,返回错误信息,跳转登陆页
没有必要专门访问一次后台看看session在不在,再进行操作。。。
我用的基线版本是4.0,3.4的我没用过
以前回答extjs的问题时也遇到过版本不对,找不到方法的问题...
2014-03-26
展开全部
json我不是很会!!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询