2014-11-30 3 views
0

jQuery의 ajax 함수를 사용하여 파일을 업로드하고 있습니다. 파일 업로드가 완벽하게 작동하고 데이터가 올바르게 전송되지만 HTML은 업데이트되지 않습니다. 폼이 제출되면 버튼이 다시 활성화되지 않고 'Uncaught SyntaxError : Unexpected Identifier'오류가 콘솔에 표시됩니다. 오류의 줄 번호는 내 HTML 문서의 첫 번째 줄입니다.jQuery AJAX File Upload Freezes

이 내 자바 스크립트 코드 :

jQuery(function($) { 
    $('form[data-async]').on('submit', function(e) { 
     var $form = $(this); 
     var $target = $($form.attr('data-target')); 
     $form.find('button').attr('disabled', 'disabled'); 
     $.ajax({ 
      url: $form.attr('action'), 
      type: $form.attr('method'), 
      data: new FormData(this), 
      processData: false, 
      contentType: false, 
      success: function(data, status) { 
       $target.html(data.response).css('display', 'block'); 
       $form.find('button').removeAttr('disabled'); 
      }, 
      error: function(data, status) { 
       $target.html(data.response).css('display', 'block'); 
       $form.find('button').removeAttr('disabled'); 
      } 
     }); 
     e.preventDefault(); 
    }); 
}); 

가 서버에서 JSON 응답도

을 표시되지 않습니다. 이것은 내 PHP 코드의 응답입니다 :

return Response::json(['response' => 'Image has been uploaded! <script>window.location.href="/image/"' . $filename . '"</script>']); 

무엇이 오류를 발생시키고 응답을 표시하지 못하게 할 수 있습니까?

답변

-1

문제가 해결되었습니다.

return Response::json(['response' => 'Image has been uploaded! <script>window.location.href="/image/"' . $filename . '"</script>']); 

return Response::json(['response' => 'Image has been uploaded! <script>window.location.href="/image/' . $filename . '"</script>']); 
0

당신이 쓰는 PHP 코드로 다시 표류 것 같다 어디 JQuery와의 선을보고 싶은데 :

$target 
$form 

SB $ .target 또는 $ ('# 대상') 또는 이와 유사한, 아니?

+0

아니합니다. 맞습니다. 변수 이름입니다. –