1つのページに2つのフォームがあります。 1つは画像をアップロードし、もう1つはアップロードの仕様になります。JQuery submit form複数回/
問題 フォームリクエストを複数回送信したAjaxリクエストに問題があります。 [画像をアップロード]をクリックすると、同じ画像が何度かアップロードされます。毎回クリックイベントをキャシュして新しいイベントに追加します。
.unbind()
を使用して修正しました。それは動作しますしかし、私がアップロード仕様をクリックすると、それはアップロード画像要求を実行します。だからUnbind()はうまくいきませんでした。
どうすればいいですか。だから正しいアヤックスリクエストは1回だけ送られます。
私の画像をアップロードするためのコードです。
//IMAGE UPLOAD
$(document).unbind('submit').bind('submit', "#UploadImage",function() {
event.preventDefault();
var customerId = $(this).parent().find('input[name="customerId"]').val();
var image = $(this).parent().find('input[name="image"]').val();
//send ajax request
jQuery.ajax({
url: "../data/stock.php?action=stock-image-upload",
type: "POST",
data: new FormData(this),
processData: false, //prevent jQuery from converting your FormData into a string
contentType: false,
success: function(data, textStatus, jqXHR) {
console.log(2);
$('.image-viewer-modal').modal('hide');
var filter = "<?php echo $id_stc ?>";
var tab_content_to_change = "#stock-sub-list";
jQuery(tab_content_to_change).load('/tasks/stock/stock-list.php?filter='+filter);
},
error: function(jqXHR, textStatus, errorThrown){
//Display error message to user
alert("An error occured when saving the data");
}
});
});
ここに仕様がアップロードされています。
//specification UPLOAD
$(document).unbind('submit').bind('submit', "#Uploadspecification ",function() {
event.preventDefault();
var customerId = $(this).parent().find('input[name="customerId"]').val();
var specification = $(this).parent().find('input[name="specification "]').val();
//send ajax request
jQuery.ajax({
url: "../data/stock.php?action=stock-specification -upload",
type: "POST",
data: new FormData(this),
processData: false, //prevent jQuery from converting your FormData into a string
contentType: false,
success: function(data, textStatus, jqXHR) {
console.log(2);
$('.image-viewer-modal').modal('hide');
var filter = "<?php echo $id_stc ?>";
var tab_content_to_change = "#stock-sub-list";
jQuery(tab_content_to_change).load('/tasks/stock/stock-list.php?filter='+filter);
},
error: function(jqXHR, textStatus, errorThrown){
//Display error message to user
alert("An error occured when saving the data");
}
});
});
私はので、私は、アップロードボタンをクリックするたびにイベントを提出をクリアすることができますどのように、右のAJAX要求は、事前に一度だけ
多くの感謝を送っています。
クリックした後、イベントのどれをクリックすることはできません。 –