[英]Disable popup on add to cart button of virtuemart component in JOOMLA 1.7
我正在为JOOMLA 1.7使用Virtuemart 2.0.0购物车组件。 在flypage(产品详细信息页面)上,有一个“添加到购物车”按钮,用于在购物车中添加产品。
当单击该按钮时,将打开一个弹出框,该弹出框包含一些选项和详细信息,例如产品名称,继续购物按钮并转到结帐。
当我单击该按钮页面重定向到结帐页面时,我想禁用“添加到购物车”按钮上的弹出框。
所以,任何人都给我任何想法来禁用弹出窗口,以及在管理端配置我的功能时我在哪里获得了该选项
一种方法是修改vmprices.js文件中的函数,并注释掉显示弹出窗口的行,如果要在此添加其他行为,则该函数为sendtocart。 例如删除弹出窗口应执行此操作。
(function($) {
$.fn.product = function(options) {
this.each(function(){
var cart = $(this),
addtocart = cart.find('input.addtocart-button'),
plus = cart.find('.quantity-plus'),
minus = cart.find('.quantity-minus'),
select = cart.find('select'),
radio = cart.find('input:radio'),
virtuemart_product_id = cart.find('input[name="virtuemart_product_id[]"]').val(),
quantity = cart.find('.quantity-input');
**//addtocart.click(function(e) {
//sendtocart(cart);
//return false;
//});**
plus.click(function() {
var Qtt = parseInt(quantity.val());
if (Qtt != NaN) {
quantity.val(Qtt + 1);
}
});
minus.click(function() {
var Qtt = parseInt(quantity.val());
if (Qtt != NaN && Qtt>0) {
quantity.val(Qtt - 1);
}
});
select.change(function() {
$.setproducttype(cart,virtuemart_product_id);
});
radio.change(function() {
$.setproducttype(cart,virtuemart_product_id);
});
});
转到enefitmart组件并查看左侧栏,选择倒数第二个配置选项卡,然后打开配置选项卡,然后在上方查看某些选项卡,然后选择结帐选项卡,在该选项卡中查看一些选项,然后选择其第一个选项禁用购物车弹出窗口。
不知道这些设置在1.7中是否仍然存在,但以前位于以下位置:
组件-> VirtueMart->管理->配置->站点
单击“商店”下拉菜单中“选择主题”下方的“配置”链接。 设置以下值:
弹出窗口(GreyBox)中的客户结帐? 没有
使用Ajax从购物车中添加,更新或删除产品? 没有
VM 2.0不再使用主题,因此不再更改主题的任何设置。 如果要更改任何页面的外观或工作方式,请像其他Joomla扩展一样使用简单的模板替代。
复制此文件-
components/com_virtuemart/views/productdetails/tmpl/default.php
将副本放在这里-
YOUR_TEMPLATE/html/com_virtuemart/productdetails/default.php
然后进行所需的任何更改。
一种方法是修改vmprices.js文件中的函数,并注释掉显示弹出窗口的行,如果要在此添加其他行为,则该函数为sendtocart。 例如删除弹出窗口应执行此操作。
function sendtocart(form){
$.ajaxSetup({ cache: false })
var datas = form.serialize();
$.getJSON(siteurl+'index.php?option=com_virtuemart&nosef=1&view=cart&task=addJS&format=json',encodeURIComponent(datas),
function(datas, textStatus) {
if(datas.stat ==1){
//var value = form.find('.quantity-input').val() ;
var txt = form.find(".pname").val()+' '+vmCartText;
$.facebox.settings.closeImage = closeImage;
$.facebox.settings.loadingImage = loadingImage;
$.facebox.settings.faceboxHtml = faceboxHtml;
//$.facebox({ text: datas.msg +"<H4>"+txt+"</H4>" }, 'my-groovy-style');
} else if(datas.stat ==2){
var value = form.find('.quantity-input').val() ;
var txt = form.find(".pname").val();
$.facebox.settings.closeImage = closeImage;
$.facebox.settings.loadingImage = loadingImage;
$.facebox.settings.faceboxHtml = faceboxHtml;
//$.facebox({ text: datas.msg +"<H4>"+txt+"</H4>" }, 'my-groovy-style');
} else {
$.facebox.settings.closeImage = closeImage;
$.facebox.settings.loadingImage = loadingImage;
$.facebox.settings.faceboxHtml = faceboxHtml;
//$.facebox({ text: "<H4>"+vmCartError+"</H4>"+datas.msg }, 'my-groovy-style');
}
if ($(".vmCartModule")[0]) {
$(".vmCartModule").productUpdate();
}
});
$.ajaxSetup({ cache: true });
};
最简单的方法是取消选中“配置”>“模板”中的“使用产品脚本”框。
然后在您的产品详细信息模板中进行更改:
<noscript><input type="hidden" name="task" value="add" /></noscript>
至:
<input type="hidden" name="task" value="add" />
删除noscript标签
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.