a232369 2009-10-12 11:51
浏览 176
已采纳

ext.form提交问题

是使用的是 SSH2+Ext 用表单提交给一个action以后老是报错,但是在action里面能够接受到参数

这个是那个提交的表单

[code="java"] items:[
new Ext.FormPanel({

                                        id:'formPanel',
                                        monitorValid:true, 
                                        frame:true,
                                        border:false,
                                        layout:'table', 
                                        items:[
                                       {
                                            layout:'form',
                                            xtype:'combo',
                                            emptyText:'请选择...',
                                            width:80,
                                            valueField:'value',
                                            displayField:'dispaly',
                                            selectOnFocus: true,//获得焦点时选定所有内容
                                            mode:'local',
                                            triggerAction:'all',
                                            store:new Ext.data.SimpleStore({
                                                fields:['dispaly','value'],
                                                data:[['姓名','name'],['员工工号','id']]
                                            }),
                                            editable:false, //不能编辑
                                            name:'condition',
                                            hiddenName:'condition',                                         
                                            allowBlank:false,   
                                            blankText:'请选择查询条件'

                                       }, 
                                       {
                                            layout:'form',
                                            xtype:'textfield',
                                            emptyText:'输入查询条件',
                                            width:100,
                                            allowBlank:false,
                                            blankText:'请输入查询条件',
                                            name:'conditionValue',
                                            hiddenName:'conditionValue'
                                       }
                                       ],
                                       buttons:[
                                                {
                                                    text:'提交',
                                                    formBind:true,
                                                    type:'submit',
                                                    handler:function(){


                                                    if( Ext.getCmp('formPanel').form.isValid()){
                                                        Ext.MessageBox.show(
                                                                {
                                                                    title:'请稍候',
                                                                    msg:'保存数据中......',
                                                                    progressText:'',    //进度条文本
                                                                    width:300,
                                                                    progress:true,
                                                                    closable:false                  
                                                                }
                                                            );
                                                            //控制进度条速度
                                                         var progress = function(p){
                                                            return function(){
                                                                var i = p/11;
                                                                Ext.MessageBox.updateProgress(i,'');
                                                            };
                                                         };
                                                         for(var i=1;i<12;i++){
                                                            setTimeout(progress(i),i*150);
                                                         }
                                                         Ext.getCmp('formPanel').form.doAction('submit',{
                                                            url:'http://localhost:8080/LantoTelProject/EmployeeAction.action',
                                                            method:'post',
                                                            params:'',
                                                            //成功后的回调函数
                                                            success:function(form,action){
                                                                if(action.result.msg=='ok'){
                                                                    onclickMenuItem2(this); 

                                                                }else{
                                                                    Ext.Msg.alert('提示','数据查询失败!');
                                                                }
                                                            },
                                                            //失败后的回调函数
                                                            failure:function(){
                                                                Ext.Msg.alert('错误','服务器出现错误,请稍候再试!');
                                                            },
                                                            waitMsg:'查询数据中...'
                                                         });    

                                                }


                                                    }



                                                }
                                                ]
                                })][/code]

这个是那个action
[code="java"] private String condition;
private String conditionValue;

HttpServletResponse response;


public String getEmployeeByCondition() throws Exception {
    PrintWriter out=response.getWriter();
    out.print("{success:true,msg:'ok'}");
    return "success";   



}[/code]

提交以后老是调用failure方法
[b]问题补充:[/b]
哪位大哥来帮我看下咯。。。
[b]问题补充:[/b]
我用的是S2, 不知道这个和S1有没有区别
[b]问题补充:[/b]
嗯 ,这个好像是可以了 ,但是页面报一个错误说 ext-all.js 有语法 错误
我用的是 ext3.0 不知道有区别不

  • 写回答

4条回答 默认 最新

  • wanghaolovezlq 2009-10-12 16:14
    关注

    应该是你的action代码写的有问题
    try {

    ServletActionContext.getResponse().setContentType(

    "text/html;charset=utf-8");

    ServletActionContext.getResponse().setHeader("Cache-Control",

    "no-cache");

    ServletActionContext.getResponse().setCharacterEncoding("UTF-8");

    PrintWriter out = ServletActionContext.getResponse().getWriter();

    out.print(str);

    out.flush();

    out.close();

    } catch (IOException e) {

    e.printStackTrace();

    }

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

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作