从extjs弹出窗口向spring控制器发送数据

从extjs弹出窗口向spring控制器发送数据,spring,forms,extjs,controller,Spring,Forms,Extjs,Controller,我有一个包含表单面板的extjs弹出窗口,我想知道如何将表单面板中的数据发送到我的spring控制器 var formPanel = { xtype : 'form', height : 125, autoScroll : true, id : 'formpanel', defaultType : 'field', frame : true, items : [

我有一个包含表单面板的extjs弹出窗口,我想知道如何将表单面板中的数据发送到我的spring控制器

var formPanel =  {
    xtype       : 'form',
    height      : 125,
    autoScroll  : true,
    id          : 'formpanel',
    defaultType : 'field',
    frame       : true,
    items       : [
        {
            fieldLabel : 'Name'
        },
        {
            fieldLabel : 'Age'
        }
    ]
};

function openIFrame() {
 Ext.create('Ext.window.Window', {
    title : 'Import your devices',
    width: 500,
    height: 500,
    layout: 'fit',
    items: [formPanel]
}).show();

}

通过一些选择器从控制器获取表单,然后调用getForm.getValues方法。方法返回由表单字段及其值组成的对象


然后,您可以使用Ext.Ajax.request方法将此对象发送到服务器文档:

您可以通过以下代码将带有参数的请求发送到服务器:

 Ext.Ajax.request({
    url: '/requestUrl',
    params: {
        param1: data1,
        param2: data2
    },
    method: 'POST',
    success: function(response) {
        //do something...
        }
    })
此外,您还需要将此代码添加到弹出窗口中的某个侦听器中,例如在onButtonClick中

要在BE处理请求,您需要创建如下控制器:

@ResponseBody
@RequestMapping(value = "/requestUrl")
public void handler(@RequestParam ("param1") String param1,
                        @RequestParam ("param2") String param2) throws Exception {
      //do something with data
}

@zan我添加了我的代码,我将创建一个按钮submit来发送表单,但我不确定是否可以在spring控制器中发送和恢复数据不确定?您是否确实尝试过在Spring控制器中处理请求?它起作用了吗?如果没有,为什么?@JeromeCampeaux是我为你准备的答案?@JamesSchermann谢谢你的回答,我终于用另一种方式来做我的事情了;也许将来它会对我有所帮助:
@ResponseBody
@RequestMapping(value = "/requestUrl")
public void handler(@RequestParam ("param1") String param1,
                        @RequestParam ("param2") String param2) throws Exception {
      //do something with data
}