是否有某种方法可以从Extjs中的 filefield 小部件获取文件名?
我可以使用下面的值,但这会给我一个 c:\ fakepath \ blah 字符串。而在Internet Explorer中又有所不同。
xtype: 'filefield',
itemId: 'fileupload-field',
listeners: {
change: function (fld, value) {
var fuf = Ext.ComponentQuery.query("#fileupload-field");
//??
}
}
不是执行所有这些字符串操作(由于路径不是字符转义,这比看起来更难)来获取文件名,我希望文件字段组件有一个方法或者属性,它只给我文件名
然而,看API我看不到任何可以帮助我的事情。
答案 0 :(得分:3)
xtype: 'filefield',
itemId: 'fileupload-field',
listeners: {
change: function (fld, value) {
var newValue = value.replace(/^.*\\/, "");;
fld.setRawValue(newValue);
}
}
答案 1 :(得分:1)
Ext.create('Ext.form.Panel', {
title: 'Upload a Photo',
width: 400,
bodyPadding: 10,
frame: true,
renderTo: Ext.getBody(),
items: [{
xtype: 'filefield',
name: 'photo',
fieldLabel: 'Photo',
labelWidth: 50,
msgTarget: 'side',
allowBlank: false,
anchor: '100%',
buttonText: 'Select Photo...',
listeners: {
change: function(fld, value) {
alert(value.replace(/C:\\fakepath\\/g, ''));
}
}
}]
});