javascript - allowBlank : false in extjs fields有什么用

标签 javascript extjs

我在面板中有一个文本字段。例如:

{
    xtype:'textfield',
    id:'usap8',
    width:199,
    height:26,
    colspan:1,
    margin: '1 0 1 0',
    allowBlank: false,
    fieldStyle: 'text-align: center;'
}

我可以限制面板提交吗?如果不是,allowBlank配置有什么用?

最佳答案

allowBlank 不会自动限制表单提交。

相反,如果您询问表单是否有效,它是一个相关的配置:

if(form.isValid()) form.submit()

isValid函数,询问所有字段是否有效:

invalid = me.getFields().filterBy(function(field) {
        return !field.validate();
    });

field.validate() 调用 field.isValid(),后者调用 field.getErrors()

Ext.form.field.Text 在其函数中有以下行 getErrors :

if (trimmed.length < 1 || (value === me.emptyText && me.valueContainsPlaceholder)) {
    if (!me.allowBlank) {
        errors.push(me.blankText);
    }

这里您所说的配置会导致如果该字段为空则抛出错误。

然后该错误通过上述函数返回,直到 form.isValid() 返回 false(但您也可以通过调用 field 来找出错误.validate()field.isValid()field.getErrors() 手动)...

关于javascript - allowBlank : false in extjs fields有什么用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26624737/

相关文章:

javascript - 当新用户在 javascript 的 firebase 中创建它时自动登录

javascript - URL 片段和 BASE 标记

extjs - 如何在extjs中实现以下功能

extjs - 在 extjs 中删除行后重新加载网格选择

javascript - 面板上的双击事件

javascript - 如何在javascript中延迟执行for循环

javascript - 如何在 Javascript 中创建 "about To Blur"或 "will blur"事件?

javascript - 在 jQuery 中为多个事物设置动画时如何处理回调被多次调用

extjs - 在 extjs 中如何将存储数据绑定(bind)到网格

Extjs 类系统静态