2
我有我的頁面上有兩個容器:的jQuery插件的形式提交雙產生
<div id="foto_1"><span>Change foto</span><img src="" /></div>
<div id="foto_2"><span>Change foto</span><img src="" /></div>
,並形成插件包在我自己的函數.ajaxSubmit():
function imgUpload(div_id) {
$('#myimgForm').submit(function(e){
e.preventDefault();
$(this).ajaxSubmit(
{
target: '',
success: function(data) {
var new_data = data.split('.');
var path = new_data[0]+'_sm.'+new_data[1];
$('#foto_'+div_id+' img').attr('src', '');
$('#foto_'+div_id+' img').attr('src', path);
},
resetForm: true
});
return false;
});
}
然後,我打電話給我的功能:
$('#foto_1 span').click(function(){
imgUpload(1);
});
$('#foto_2 span').click(function(){
imgUpload(2);
});
所以問題在於,當我點擊第二個容器時,.ajaxsubmit()執行了兩次。什麼原因?我點擊之前試圖解除綁定(「現場」),也簡單綁定()和簡單的點擊() - 沒有變化......請幫助
下面是一個HTML表單:
<form method="post" enctype="multipart/form-data" id="myimgForm" name="myimgForm" action="/save_image_form.php">
<div id="imgForm_div">
<div id="img_input"><input type="file" name="caret" /></div>
<input type="button" id="cancel_img" value="Cancel" />
<input type="submit" value="Upload" />
</div>
</form>
是的,我試過這種方式,沒有變化( – Cadenzar
請顯示錶格的HTML源代碼 – AlecTMH
我將html表單添加到問題 – Cadenzar