日期:2014-05-17  浏览次数:21056 次

ext4 form表单如何提交的数据如何在struts2中接收
页面用的是ext4,form表单中的数据如何在struts2中的action接收form表单中的数据,form表单提交的方式是标准的post提交,后台我测试了半天总是为null贴上代码
JScript code
var form = Ext.create('Ext.form.Panel',{
        // The fields
        bodyPadding: 5,
        id:'form',
//         standardSubmit:true,
        bodyPadding: '10 10 0',
        height:320,
           defaults: {
            anchor: '100%',
            allowBlank: false,
            labelWidth: 60
        },
        items: [
            {
                  xtype: 'textfield',
                  blankText :'名称不能为空!',
                fieldLabel: '名称',
                name: 'floorName',
                allowBlank: false
            },{
                xtype: 'textfield',
                blankText :'ip地址不能为空!',
                fieldLabel: 'IP地址',
                name: 'ip',
                allowBlank: false
            },{
                xtype: 'textfield',
                blankText :'总线编号不能为空!',
                fieldLabel: '总线编号',
                name: 'can',
                allowBlank: false
            },{
                xtype: 'textfield',
                blankText :'比例不能为空!',
                fieldLabel: '比例尺',
                name: 'scale',
                allowBlank: false
            },{
                fieldLabel: '地图',
                blankText :'地图不能为空!',
                xtype:'filefield',
                name: 'file',
                anchor: '100%',
                labelWidth: 60,
                allowBlank: false
            },{
                xtype: 'textarea',
                height:120,
                fieldLabel: '描述',
                name: 'desc'
           }],
        buttons: [{
            text: '重置',
            handler: function() {
                this.up('form').getForm().reset();
            }
        }, {
            text: '提交',
            formBind: true, //only enabled once the form is valid
            handler: function() {
                var form = this.up('form').getForm();
                if (form.isValid()) {
                    form.submit({
                         url: 'addFloor.action?building='+floorId,
                         mthod:'post',
                        waitMsg: '正在上传文件请稍后......',
                        success: function(form, action) {
                           Ext.Msg.alert('Success', '保存成功!');
                           Ext.getCmp("tree").getLoader().load();
                           Ext.getCmp("tree").expand(true);
                        },
                        failure: function(form, action) {
                            Ext.Msg.alert('Failed', '保存失败');
                        }
                    });
                }
            }
        }]
    })

后台action
Java code
public class LocateFloorExtAction extends BaseAction {
    String floorName;//楼层名称
    String ip;//ip地址
    String can;//总线编号
    File file;//地图
    String desc;//描述
    String scale;//比例尺
    String building;//楼层id
    ILocateBuildingService buildingService;
    ILocateFloorService service;
    

别的我就不发了,能进去,执行方法后获取的总是空的,请高手帮忙看下要怎么解决啊。

------解决方案--------------------
你那个mthod:'post',
 中的method少写了个字母吧???
------解决方案--------------------
恩, method写错了。 

你用firefox看下啊。 看是客户端代码的错误还是服务器端的。

学ext咋不会用firebug。