hexawing 2011-05-17 21:45
浏览 294
已采纳

请问一下Ext 4.0中表单采用非Ajax方式提交是怎么写的啊?

在网上找到的都是抄来抄去的,大致是这样:
[code="javascript"]//实现非AJAX提交表单一定要加下面的两行! onSubmit : Ext.emptyFn, submit : function() {

//再次设定action的地址

this.getEl().dom.action ='user.do?method=login'; this.getEl().dom.method = 'post';

//提交submit

this.getEl().dom.submit();

},[/code]
现在的问题是,4.0里好像没有.getEl()了……那么应该咋写啊?
我试着用AJAX方式提交的话,也有问题,报这样的错:
[img]http://dl.iteye.com/upload/attachment/482912/49a0d51a-3187-3155-ab7c-3f4ae7583271.png[/img]

感觉它好像把我的HTML内容试图用JSON方式解析出来?还是说我的后台返回的数据格式有问题?
我后台是ROR,写成这样:
[code="ruby"]
respond_to do |format|
format.html
format.xml { render :xml => @customers }
end
[/code]
就报那个错;如果写成这样:
[code="ruby"]
respond_to do |format|
format.html {render :json =>{"success"=>"ok"}.to_json}
format.xml { render :xml => @customers }
end
[/code]
就不报错了,但也不跳转页面……跳转页面难道是写在JS里的?之前3.x的时候我都是用的第一种写法它直接就跳转了的啊……

官网上的例子也都没有涉及到真正页面跳转的,照着API里的简单例子写成了这样,但还是不行:

[code="javascript"]
Ext.onReady(function() {
var submit_check = function(){
login_form.getForm().submit();
};

    var login_form = Ext.create('Ext.form.Panel', {
      url: '/login/login',
      frame: true,
      title: '请登录',
      buttonAlign: "right",
      width: 500,
      bodyPadding: 5,
      plain: false,

...
buttons: [{
text: 'Submit',
handler: submit_check,
formBind: true
}]
});

[/code]

  • 写回答

2条回答 默认 最新

  • suziwen 2011-05-17 23:37
    关注

    你添加一个这个属性,就会以非AJAX方式提交了

    standardSubmit:true,

    [code="js"] var login_form = Ext.create('Ext.form.Panel', {

    url: '/login/login',

    standardSubmit:true,[/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥15 如何修改pca中的feature函数
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况