我有一个表单(带有文件字段),一旦表单被验证(即:已经为文件字段选择了一个文件),[Upload]按钮应该是活动的。
PHP函数返回一个字符串['true','false']并在整个地方工作。这不是bug的来源。保证。
问题在于,当将表单设置为disabled: true
时,查找文件字段(formBind: true
)的按钮正在解释禁用的字段。文件作为传递表单要求。
一个可能的解决方案是只禁用“浏览”按钮,该按钮是该字段的一部分。文件,但我不知道该怎么做。
导致问题的全部功能如下:
update_inventory_form_panel = new Ext.form.Panel({
title: 'Update Inventory',
bodyStyle: 'padding: 5px;',
region: 'north',
items: [
new Ext.form.field.Display({
value: 'Choose a CSV to upload.'
}),
new Ext.form.field.File({
fieldLabel: 'Inventory File',
name: 'update_csv',
inputWidth: 400,
allowBlank: false,
disabled: <?= php_function_that_returns_'true'_or_'false'();?>
})
],
buttons: [
new Ext.Button({
text: 'Upload',
formBind: true,
handler: update_handler
})
]
});
答案 0 :(得分:1)
问题在于将表单设置为disabled:true
从上面的代码中,看起来你正在禁用'Ext.form.field.File'而不是'Ext.form.Panel'。
上传按钮处于活动状态,因为当禁用“Ext.form.field.File”时,表单不会考虑文件字段进行验证。 (如果未禁用field.File并将其保留为空,则将禁用上载按钮)