2012-04-04 25 views
0

在多頁表單的中間,我有一個用戶可以上傳圖像的部分,該圖像是預覽馬上使用ajax。但是,當用戶上傳圖像時,實際的表單本身也會嘗試提交,並且我認爲存在ajax衝突。這是我使用的AJAX圖片上傳代碼:Ajax圖像上傳與表單ajax發生衝突 - 使.submit()函數僅適用於該表單

$(document).ready(function() { 
    $('#logo').live('change', function()   { 
     $("#prlogo").html(''); 
     $("#prlogo").html('<img src="../preview/loader.gif" alt="Uploading...."/>'); 
     $("#logoform").ajaxForm({ 
      target: '#prlogo' 
     }).submit(); 
    }); 
}); 

這是形式:

<form id="logoform" method="post" enctype="multipart/form-data" action='../preview/logo.php'> 
    <input type="file" name="logo" id="logo" /> 
</form> 

是否有可能是.submit()鏈接到與ID logoform形式?有沒有其他方法可以限制提交工作僅用於圖片上傳而不是表單?

回答

0

你可以嘗試重寫提交表單的功能,所以在打電話之前提交,則需要設置以下

$('form').submit(function() { 
    $.ajax({ 
     url: this.action, type: this.method, 
     data: $(this).serialize(), cache: false, 
     success: function() { 
      //Do upload of Image 
      } 
     } 

     //Or upload image here 
    }); 
+0

感謝您的答覆是這樣的,但我不知道你是什麼意思... – Miro 2012-04-04 11:17:18