5

我得到了一个Ext.form.Basic配置。trackResetOnLoad:true

当我调用一个字段时,它从表单方法中reset()获取它的值。我现在如何重置我的字段? 当我只是做表格时,将其标记为无效,因为该字段是必需的。setValues()

field.setValue('')

提前致谢。

4

2 回答 2

6

您必须手动重置所有originValues字段(以及其他字段)

这个剪断会做到这一点

var items = form.getForm().getFields().items,
    i = 0,
    len = items.length;
for(; i < len; i++) {
    var c = items[i];
    c.value = '';
    if(c.mixins && c.mixins.field && typeof c.mixins.field['initValue'] == 'function'){
        c.mixins.field.initValue.apply(c);
        c.wasDirty = false;
    }
}

工作示例

于 2013-01-31T10:34:00.107 回答
0

对我有用的是在创建表单之后使用类似的方法获取值的副本,var originalValues = myForm.getFieldValues();然后我可以稍后使用myForm.setValues(originalValues);而不是调用来恢复这些值myForm.reset(...);

于 2015-03-27T22:10:49.510 回答