我有一组Javascript / jQuery sprint来处理表单提交:
$('#addtocart').click(function (e){
// No Accessories: normal submit
if ($('#accessories ul li').size()==0) {
$('#quickbuyform').submit();
return true;
}
strName = "<?php echo $_product->getName() ?>";
// Pop with loading
popAccessories();
$('.pop_accessories_area_button').show();$('.pop_accessories_area_button').show();
e.preventDefault();
});
$('#nothanks').click( function (){
$('#quickbuyform').unbind('submit').submit();
});
$('.aceimg').click( function (){
$('#quickbuyform').unbind('submit').submit();
});
要求:
因此,当您点击addtocart
时,它会检查是否有适合此特定产品的配件。如果没有,只需提交表格即可。如果有附件,则div
部分显示为弹出窗口。从该弹出窗口中,如果用户点击任何附件产品,则应提交quickbuyform
。
问题:现在表单提交变得如此随机。有时它提交表单,而有时则不提交。
帮助:任何人都可以看到,我在这里做错了什么......?
感谢名单
答案 0 :(得分:1)
这似乎是问题所在:
在<div class="aceimg>
内,你有一个<a href="some-product-link.html">
实际上,在评估您的JQuery之前,浏览器会开始转到<a>
标记中的链接。
您可以做的是删除链接(因为它只是为了选择一个附件而不是查看它)。
如果您需要任何进一步的帮助,请告诉我们。
答案 1 :(得分:0)
这里有一些可能出错的地方,特别是间歇性的:
为什么 需要做两次:
。$( 'pop_accessories_area_button ')显示(); $('。pop_accessories_area_button')显示();
和此:
而不是 这个:$( '#quickbuyform')解除绑定( '提交')提交()。;
$( '#quickbuyform')提交();
这表明你可能有 在页面上不止一个这样的表格,你正在尝试 解决它。您可能正在提交隐形表单而不是您想要的表单等。
这不是一个真正的解决方案,我必须看到你正在看的更多内容,但我遇到了上述情况。
我刚检查过,你在这里也有404错误:
http://www.impressiveinvitations.com.au/skin/frontend/dreamday/imtheme/js/jquery.form.js
这可能与它有关......