Extjs4.1-在隐藏字段中提交有效表单的allowblank为false
我有一个带有动态项的表单面板。某些项目已隐藏,例如:Extjs4.1-在隐藏字段中提交有效表单的allowblank为false,extjs,extjs4.1,Extjs,Extjs4.1,我有一个带有动态项的表单面板。某些项目已隐藏,例如: items: [{ xtype: 'textfield', fieldLabel: 'Field 1', name: 'theField' },{ xtype: 'textfield', fieldLabel: 'Field 2', name: 'theField'
items: [{
xtype: 'textfield',
fieldLabel: 'Field 1',
name: 'theField'
},{
xtype: 'textfield',
fieldLabel: 'Field 2',
name: 'theField'
},{
xtype: 'textfield',
fieldLabel: 'Field 3',
name: 'theField',
hidden: true,
allowBlank : false
}]
但是当我提交我的表格时
if (form.isValid()) {
alert('submit');
}else alert('fail');
这将检查所有字段,并且我的表单不会提交是否已转换为有效形式(仅显示字段)?怎么做谢谢
下面是我要检查的示例正如您所说,隐藏字段仍将被验证。相反,您应该禁用该字段,这意味着它不会被提交,但也不会包含在验证中。正如您所说,隐藏字段仍将被验证。相反,您应该禁用该字段,这意味着它不会被提交,但也不会包含在验证中。隐藏字段将被验证。要禁用或跳过隐藏字段的验证,可以将“skipValidation”设置为true。此外,如果也设置了“allowBlank”,则将其设置为true 因此,通常当定义了一个字段并在其上添加了验证时,将skipValidation设置为true将禁用该字段的表单提交验证。但是,它不会禁用allowBlank验证。提交时仍无法将字段设置为空。因此,如果您的字段除了需要字段之外还有其他验证,那么您将需要这两种验证。显示字段时重置它们
//View
xtype:'textfield',
allowBlank:false,
validator: function(){
//custom validation
}
...
//Controller
function(){
...
form.down("#field").skipValidation = true;
form.down("field").allowBlank = true;
...
}
隐藏字段将被验证。要禁用或跳过隐藏字段的验证,可以将“skipValidation”设置为true。此外,如果也设置了“allowBlank”,则将其设置为true 因此,通常当定义了一个字段并在其上添加了验证时,将skipValidation设置为true将禁用该字段的表单提交验证。但是,它不会禁用allowBlank验证。提交时仍无法将字段设置为空。因此,如果您的字段除了需要字段之外还有其他验证,那么您将需要这两种验证。显示字段时重置它们
//View
xtype:'textfield',
allowBlank:false,
validator: function(){
//custom validation
}
...
//Controller
function(){
...
form.down("#field").skipValidation = true;
form.down("field").allowBlank = true;
...
}
事实上,我设置了隐藏和禁用,它就像一个符咒!谢谢兄弟!:-)事实上,我设置了隐藏和禁用,它就像一个符咒!谢谢兄弟!:-)