在表单字段上阻止页面重新加载按下ExtJS中的输入

时间:2017-03-02 22:47:23

标签: extjs extjs6 extjs6-modern

我对ExtJS现代工具包的表单组件有疑问。

我创建了一个没有按钮的表单(你可以在sencha小提琴中测试它)。唯一的按钮位于标题栏中,此刻它不起作用。

  

问题是:

按Enter键提交表单。我的表单是空的,默认方法是POST,但当我按下Enter时我的页面正在重新加载,而焦点在我的任何字段上。浏览器补充表单字段名称中的URL地址字符串,但表单的方法是POST。

Ext.create('Ext.form.Panel', {
    renderTo: Ext.getBody(),
    requires: [
        'Ext.form.FieldSet',
        'Ext.field.Text',
        'Ext.field.TextArea',
        'Ext.TitleBar'
    ],

    items: [{
        xtype: 'titlebar',
        docked: 'top',
        title: 'Searching',
        items: [{
            iconCls: 'fa fa-search',
            iconAlign: 'right',
            text: 'Search',
            align: 'right',
            handler: function() {
                //
            }
        }]
    }, {
        xtype: 'fieldset',
        border: false,
        shadow: 'true',
        defaults: {
            value: ''
        },
        items: [{
                xtype: 'numberfield',
                label: 'Some ID',
                allowBlank: true,
                name: 'id'
            },
            {
                xtype: 'textfield',
                label: 'Some Article',
                name: 'article'
            }
        ]
    }]
});

如何防止页面重装?

默认情况下,我从未在 ExtJS 表单中看到此行为。

1 个答案:

答案 0 :(得分:3)

只需将id替换为字段名称中可能为Id的其他内容,它与Ext id属性

冲突
{
  xtype: 'numberfield',
  label: 'Some ID',
  allowBlank: true,
  name: 'Id'
},