2015-02-06 3 views
0
.on('complete', function(id, name, response) { 
    console.log(id); 
    console.log(response); 
    console.log(name); 
    $("input").attr({ 
     type: 'hidden', 
     name: id 
    }).val(name).appendTo('form'); 
}) 
.on('deleteComplete', function(id, xhr, isError) { 
    console.log(name); 
    $('input[name=' + id + ']').remove(); 
}); 

나는 이미지를 업로드하고 추가 처리를 위해 PHP로 post 자신의 위치에 숨겨진 필드 (올바른 방법)으로 이미지 파일 이름을 추가하는 최신 FineUploader을 사용하고 있습니다.FineUploader onDelete 및 onComplete를

문제는 id이 두 콜백간에 공통적이지만 개체를 ​​반환하고 처리 방법이 확실합니다. PHP에 파일 이름 위치를 저장/게시 할 필요가 있습니다.

답변

1

콜백 매개 변수가 잘못되었습니다. 파인 업 로더 용 jQuery 플러그인 랩퍼를 사용하는 경우, 각 이벤트 핸들러의 초기 매개 변수는 항상 Event입니다. 즉, 처리중인 이벤트와 연관된 jQuery 이벤트 객체입니다.

그냥 명확하게하기 위해, 당신은 코드를 다음과 같이한다 :

.on('complete', function(event, id, name, response) { 
    ... 
}) 
.on('deleteComplete', function(event, id, xhr, isError) { 
    ... 
}); 

이 내가 사용하지 않는 사용자를 권고 한 많은 이유 중 하나입니다 jQuery를 플러그인 래퍼. 이는 파인 업 로더 콜백 작업을 더욱 혼란스럽게 만들고 전혀 도움이되지 않습니다. 이 점을 감안하여 어떤 이유로 든 jQuery 플러그인 랩퍼를 사용하려는 경우 파인 업 로더 인스턴스를 생성 할 때 초기 구성 옵션의 일부로 전달 된 callback 옵션의 일부로 콜백 처리기를 선언해야합니다.

+0

감사합니다. 도움이되었습니다. 이제'onComplete'에서 생성 된'ondeleteComplete' 내에서 동일한 숨겨진 필드를 삭제하는 방법을 알아야합니다 – 3zzy

+0

숨겨진 필드를 만들고 양식을 다시 제출하는 이유는 무엇입니까? 파인 업 로더는 업로드 POST 요청에서 각 파일의 파일 이름을 보냅니다. –

+0

오? 'echo'와 함께 아무것도 볼 수 없었습니다

'.print_r($_POST,1).'
';' – 3zzy