0

我有一个带有弹簧形式的用户详细信息的 Ext JS 窗口。此外,我的控制器中有一个用户验证器,因此,如果表单有错误,我可以看到错误是什么:

UserValidator userValidator = new UserValidator();
userValidator.validate(user, result);
if(result.hasErrors()){
    return "RegisterUserForm";

我的问题是相对于在 ExtJS 窗口中有这个表单。如果我返回“RegisterUserForm”,浏览器会转到此表单并显示错误但不在窗口中。它在新页面中显示表单和错误,并且 URL 更改为 /RegisterUserForm。(这很明显)我怎样才能在没有这个问题的情况下显示相同的错误表单?

谢谢

4

1 回答 1

1

有2个选项:

  1. 更改您的服务器代码以使其成为仅返回要由您的 ExtJS 代码处理的数据而不是表单页面的 AJAX 调用
  2. Ext.window.Window使用带有/RegisterUserFormurl的iFrame:

前任:

Ext.create('Ext.window.Window', {
    layout: 'fit',
    //other config here
    items: [{
        xtype: 'component',
        autoEl: {
            itemId: 'iframe',
            tag: 'iframe',
            src: '/RegisterUserForm',
            frameBorder: 0
        }
    }]
}).show()
于 2013-06-26T11:56:55.607 回答