我将 extJS4 用于我的 GUI,因此也显示文件上传对话框。最后,我只想有一个按钮,当我点击它时,它会显示文件上传对话框,当我在那里选择一些东西时,它会自动上传文件。
对于自动“提交”,我知道我必须为文件上传对话框的 onChange 事件编写一个处理程序。因此,这不是问题。但是有没有办法在不求助于 CSS 的情况下禁用文本字段?(当我选择要上传的文件时,名称被写入文本字段......并且我想消除文本字段或至少使其不可见)。
我将 extJS4 用于我的 GUI,因此也显示文件上传对话框。最后,我只想有一个按钮,当我点击它时,它会显示文件上传对话框,当我在那里选择一些东西时,它会自动上传文件。
对于自动“提交”,我知道我必须为文件上传对话框的 onChange 事件编写一个处理程序。因此,这不是问题。但是有没有办法在不求助于 CSS 的情况下禁用文本字段?(当我选择要上传的文件时,名称被写入文本字段......并且我想消除文本字段或至少使其不可见)。
您搜索的属性是buttonOnly: true
在这里您可以找到文档
只需将其添加到示例中,如下所示:
Ext.create('Ext.form.Panel', {
title: 'Upload a Photo',
width: 400,
bodyPadding: 10,
frame: true,
renderTo: Ext.getBody(),
items: [{
xtype: 'filefield',
buttonOnly: true,
name: 'photo',
fieldLabel: 'Photo',
labelWidth: 50,
msgTarget: 'side',
allowBlank: false,
anchor: '100%',
buttonText: 'Select Photo...'
}],
buttons: [{
text: 'Upload',
handler: function() {
var form = this.up('form').getForm();
if(form.isValid()){
form.submit({
url: 'photo-upload.php',
waitMsg: 'Uploading your photo...',
success: function(fp, o) {
Ext.Msg.alert('Success', 'Your photo "' + o.result.file + '" has been uploaded.');
}
});
}
}
}]
});