2013-04-17 4 views
0

내가 jQuery를 불 제출에 문제가에 제출 형식 :로 preventDefault 및 jQuery를

$(document).ready(function() { 
        $('#zestaw-edytuj-form').submit(function(e) { 
         e.preventDefault(); 
         $('#ip_dilmarbundle_zestawytype_path').uploadify('upload'); 
        }); 

        $('#ip_dilmarbundle_zestawytype_path').uploadify({ 
         'swf'  : '{{ asset("js/uploadify/uploadify.swf") }}', 
         'uploader' : '{{ path('upload-image') }}', 
         'folder' : '{{ asset("images") }}', 
         'auto'  : false, 
         'onUploadSuccess' : function(file,data,response) { 
          $('#ip_dilmarbundle_zestawytype_zdjecie').attr('value',file.name); 

         }, 
         'onUploadComplete' : function(file) { 
          $('#zestaw-edytuj-form').submit(); 
         }, 
         'onUploadError' : function(file, errorCode, errorMsg, errorString) { 

         }, 
        }); 
       }); 

첫째, 후 제출 버튼 전에서 preventDefault 및 이미지를 업로드해야합니다를 클릭합니다. 업로드가 완료되면 (onUploadComplete) 일반적으로 양식을 제출해야합니다. 그러나 이미지 업로드시 제출은 실행되지 않습니다. 그걸로 내가 뭘 할 수 있니?

+1

뒤에 ','onUploadError : func() {},'의 끝에 있습니다. – Jai

답변

0

이 시도 :의 끝에 여기에, 뒤에

편집 :이 너무 고정 :

$(document).ready(function() { 
    var ready = false; 

$('#zestaw-edytuj-form').submit(function(e) { 
    if(!ready){ 
     e.preventDefault(); 
     $('#ip_dilmarbundle_zestawytype_path').uploadify('upload'); 
    } 
}); 

$('#ip_dilmarbundle_zestawytype_path').uploadify({ 
    'swf'  : '{{ asset("js/uploadify/uploadify.swf") }}', 
    'uploader' : '{{ path('upload-image') }}', 
    'folder' : '{{ asset("images") }}', 
    'auto'  : false, 
    'onUploadSuccess' : function(file,data,response) { 
     $('#ip_dilmarbundle_zestawytype_zdjecie').attr('value',file.name); 

    }, 
    'onUploadComplete' : function(file) { 
     ready = true; 
     $('#zestaw-edytuj-form').submit(); 
    }, 
    'onUploadError' : function(file, errorCode, errorMsg, errorString) { 

    } 
}); 
}); 
+0

처음에는'ready = false'를 추가하고 작동합니다. 감사. :) –

0

'onUploadError, FUNC() {}'나는 당신이 수식을 믿습니다 여기에 제출 루프가 있으면 작동합니다. 몇 가지 제안. 양식을 두 개의 양식 (별도 양식 태그)으로 분리 할 수 ​​있습니다. 하나는 파일 업로드 용이고 다른 하나는 입력 데이터 용입니다. 파일 업로드가 완료되면 데이터 양식을 제출하십시오. 그러나 아마도 가장 좋은 방법은 uploadify를 사용하면 다른 추가 데이터를 매개 변수로 보낼 수 있으므로 파일 업로드를 처리하는 동일한 스크립트가 들어오는 데이터를 처리 할 수 ​​있습니다. var myform = $(this).serializeArray()과 같은 형식 매개 변수를 얻을 수 있으며이 매개 변수는 formData이므로 uploadify() 구성 매개 변수에 'formData':myform을 설정하면됩니다. (참고 : Uploadify 사이트는 지금 http://www.uploadify.com/documentation/uploadify/formdata/입니다.

관련 문제