Magento ストアの 1 つに対して次の Jquery ajaxSubmit を実行しようとしています。フォームからもアップロードするファイルが 2 つあるため、ajaxSubmit を使用します (データが必要であることを意味します$_FILE
)。しかし、ajaxSubmit を実行すると、通常のフォーム送信も実行されます。これにより、ページが更新され、次のページに移動します。同じページにとどまる代わりに、ポップアップ ボックスがいくつかあります。これreturn false;
を防ぐ必要がありますが、失敗します。送信コード:
$('#quickbuyform').submit(function (){
// No Accessories: normal submit
if ($('#accessories ul li').size()==0) {
return true;
}
strName = "<?php echo $_product->getName() ?>";
// loading message
$('#pop_accessories_area_message').html("We are adding '"+strName+"' into your shopping cart ...");
// Pop with loading
popAccessories();
// loading icon
//var dataString = $('#quickbuyform').serialize();
$.ajaxSubmit({
type: "POST",
url: $('#quickbuyform').attr('action'),
data: dataString,
beforeSubmit: showRequest,
success: function() {
// display cart link:
$('#pop_accessories_area_message').html(strName+" was added to <a href='<?php echo $this->getUrl('checkout/cart') ?>'>your shopping cart</a>.");
$('.pop_accessories_area_button').show();
//window.location = '<?php //echo $this->getUrl('checkout/cart') ?>';
}
});
return false;
});
これは私が今持っているものですが、今e.preventDefault()
は何も送信しません。ただ立ち寄って('#quickbuyform').ajaxSubmit
$('#quickbuyform').submit(function (e){
e.preventDefault();
// No Accessories: normal submit
if ($('#accessories ul li').size()==0) {
return true;
}
strName = "<?php echo $_product->getName() ?>";
// loading message
$('#pop_accessories_area_message').html("We are adding '"+strName+"' into your shopping cart ...");
// Pop with loading
popAccessories();
$('#quickbuyform').ajaxSubmit({
type: "POST",
url: $('#quickbuyform').attr('action'),
data: dataString,
success: function() {
// display cart link:
$('#pop_accessories_area_message').html(strName+" was added to <a href='<?php echo $this->getUrl('checkout/cart') ?>'>your shopping cart</a>.");
$('.pop_accessories_area_button').show();
//window.location = '<?php echo $this->getUrl('checkout/cart') ?>';
}
});
return false;
});