tôi đang làm việc với điều khiển tải lên tệp Extjs4. tôi có cái nhìn với sự kiểm soát tập tin tải lên như-Tải tệp lên bằng extjs4
Ext.define('Balaee.view.kp.dnycontent.Content',
{
extend:'Ext.form.Panel',
requires:[
'Balaee.view.kp.dnycontent.ContentView'
],
id:'ContentId',
alias:'widget.Content',
enctype : 'multipart/form-data',
title:'This day in a history',
items:[
{
xtype: 'fileuploadfield',
hideLabel: true,
emptyText: 'Select a file to upload...',
//inputType: 'file',
id: 'upfile',
width: 220
}],
buttons: [{
xtype : 'button',
fieldlabel:'upload',
action:'upload',
name:'upload',
text: 'Upload',
formBind:'true'
}]
});
Và hành động tương ứng trong điều khiển là-
getUpload : function() {
var file10 = Ext.getCmp('ContentId').getEl().down('input[type=file]').dom.files[0];
var reader = new FileReader();
reader.onload = function(oFREvent) {
fileobj=oFREvent.target.result;
console.log(oFREvent.target.result);
};
}
});
Vì vậy, trên chức năng điều khiển được khi truy xuất tập tin được tải lên và hiển thị nó trong định dạng mã hóa bên trong chức năng onload của người đọc. tức là "console.log (oFREvent.target.result);" dòng hiển thị dữ liệu của tệp được tải lên ở định dạng được mã hóa trong bảng điều khiển. Tôi cần gửi tệp này đến phía máy chủ. Vì vậy, tôi đang vượt qua trên fileobj dưới dạng thông số để lưu trữ dưới dạng-
var storeObj=this.getStore('kp.DnycontentStore');
storeObj.load({
params:{
data:fileobj
},
callback: function(records,operation,success){
console.log("send");
},
scope:this
})
Nhưng chức năng hiển thị tệp của nó không được xác định bên ngoài. Vậy làm thế nào để gửi tập tin này cùng với nội dung của nó sang phía máy chủ? Có cách nào khác để tải lên tập tin trong bộ điều khiển và gửi nó đến máy chủ. Xin ai đó có thể hướng dẫn tôi.
tại sao không chỉ gửi biểu mẫu ??? – dbrin
Thanx thưa ông trả lời. Khi tôi đang cố gắng gửi biểu mẫu bằng cách thêm mã như- "nút: [{ xtype: 'button', nhãn quảng cáo: 'tải lên', hành động: 'tải lên', tên: 'tải lên', văn bản: 'Tải lên', formBind : 'true', handler: function() { var form = this.up ('form'). getForm(); if (form.isValid()) { form.submit ({ url: 'index .php/QuestionBank/Qbpaper/getFile ', thành công: chức năng (fp, o) { Ext.Msg.alert (' Thành công ',' Ảnh của bạn '' + o.result.file + '"đã được tải lên.');}});}}}] " – user1722857
có vẻ ổn, vấn đề là gì? – dbrin