I want to add standard html input of type file
to my ExtJS form. I want this, because in version 4.1 of the framework there is a bug - filefield
is reset after submission. I tried all patches I've seen here at stackoverflow, like:
Ext.form.field.File.override({
extractFileInput: function() {
var me = this,
fileInput = me.fileInputEl.dom,
clone = fileInput.cloneNode(true);
fileInput.parentNode.replaceChild(clone, fileInput);
me.fileInputEl = Ext.get(clone);
return fileInput;
}
});
or
Ext.override(Ext.form.field.File, {
extractFileInput: function() {
var me = this,
fileInput = me.fileInputEl.dom,
clone = fileInput.cloneNode(true);
fileInput.parentNode.replaceChild(clone, fileInput);
me.fileInputEl = Ext.get(clone);
me.fileInputEl.on({
scope: me,
change: me.onFileChange
});
return fileInput;
}
});
And, yes, I set clearOnSubmit
to false
on my filefield. In FF it works, in IE - not. So, I want to use old school <input type="file" name="file" />
inside my form. I tried these two approaches:
{
xtype:'panel',
html:'<input type="file" name="file" />'
}
And
{
xtype:'displayfield',
value:'<input type="file" name="file" />'
}
But they do not work. On the server side I see an empty $_FILES array.