ajax FileUpload. js 를 사용 하여 파일 을 업로드 할 때 추가 인 자 를 추가 합 니 다.
5296 단어 ajaxFileUpload
인터넷 글 과 ajax FileUpload. js 소스 코드 를 보면 ajax FileUpload. js 자체 가 추가 인 자 를 지원 하지 않 습 니 다.
function ajaxFileUpload(DOMId,row){
var param={"exam.class_id":row.class_id,
"exam.subject_id_list":row.subject_id_list,
"exam.subject_name_list":row.subject_name_list};
$.ajaxFileUpload({
url:'importExcel_Exam_n.do?'+param,
type:'post',
secureuri: false,
fileElementId: DOMId,
dataType:'text/plain',
data:param, success: function(data, status){
$('#imageName').html(data);
},
error: function(data, status, e){
$('#imageName').html(' ');
}
});
} data 라 는 매개 변 수 는 ajax FileUpload. js 에 의 해 지원 되 지 않 습 니 다.그러나 ajax FileUpload. js 를 변경 하여 이 인 자 를 지원 할 수 있 습 니 다.구체 적 으로 다음 과 같다.
ajax FileUpload. js 소스 코드 를 엽 니 다.
createUploadForm: function(id, fileElementId){
var formId = 'jUploadForm' + id;
var fileId = 'jUploadFile' + id;
var form = jQuery('<form action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');
//...
return form;
} 빨간색 부분 코드 추가:
createUploadForm: function(id, fileElementId,data){
var formId = 'jUploadForm' + id;
var fileId = 'jUploadFile' + id;
var form = jQuery('<form action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');
//...
if(data){
for(var i in data){
$('<input type="hidden" name="'+i+'" value="'+data[i]+'"/>').appendTo(form);
}
}
return form;
} 한 가지 더 수정 해 야 할 것 은 data 인 자 를 받 기 위해 서 입 니 다.
ajaxFileUpload: function(s) {
// TODO introduce global settings, allowing the client to modify them for all requests, not only timeout
s = jQuery.extend({}, jQuery.ajaxSettings, s);
var id = s.fileElementId;
var form = jQuery.createUploadForm(id, s.fileElementId); 빨간색 부분 추가:
ajaxFileUpload: function(s) {
// TODO introduce global settings, allowing the client to modify them for all requests, not only timeout
s = jQuery.extend({}, jQuery.ajaxSettings, s);
var id = s.fileElementId;
var form = jQuery.createUploadForm(id, s.fileElementId,s.data); 저장 을 수정 하고 다시 실행 하면 배경 에서 전 달 된 제 이 슨 인 자 를 받 을 수 있 습 니 다!