2015-02-23 91 views
0

我是Magento的新手。請原諒我問這個問題,但我需要真正的幫助,因爲我無法弄清楚。爲什麼每次單擊增加或減少按鈕時,Box會增加2個按鈕

我在magento中使用了classishop主題。我的問題是我已經在list.phtml頁面上添加了添加到CART按鈕和數量框。我做了以下任務:

第一我已經加入這個:

<div class="quantity"> 

<input type="button" value="" id="add1" class="plus" title="<?php echo $this->__('Increments here No. of Qty') ?>" onclick="setQty(<?php echo $_product->getId(); ?>, '<?php echo $this->getAddToCartUrl($_product) ?>');"/> 
<input type="text" name="qty_<?php echo $_product->getId(); ?>" id="qty_<?php echo $_product->getId(); ?>" maxlength="12" value="<?php echo $this->getMinimalQty($_product) ?>" onkeyup="setQty(<?php echo $_product->getId(); ?>, '<?php echo $this->getAddToCartUrl($_product) ?>');" title="<?php echo $this->__('Input here No. of Qty') ?>" class="input-text qty" /> 
<input type="button" value="" id="minus1" class="minus" title="<?php echo $this->__('Decrement here No. of Qty') ?>" onclick="setQty(<?php echo $_product->getId(); ?>, '<?php echo $this->getAddToCartUrl($_product) ?>');"/> 
</div> 
<span id="cart_button_<?php echo $_product->getId(); ?>"><button type="button" class="addToCart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"></span></button></span> 
</form> 

我加了jQuery代碼的第二件事:

<script> 
jQuery.noConflict(); 
jQuery(".plus").click(function() 
{ 
     var currentVal = parseInt(jQuery(this).next(".qty").val()); 
     if (!currentVal || currentVal=="" || currentVal == "NaN") currentVal = 1; 
        jQuery(this).next(".qty").val(currentVal + 1); 

    }); 

    jQuery(".minus").click(function() 
    { 
     var currentVal = parseInt(jQuery(this).prev(".qty").val()); 
     if (currentVal == "NaN") currentVal = 0; 
     if (currentVal > 1) 
     { 
      jQuery(this).prev(".qty").val(currentVal - 1); 
     } 
     // Ajax save here?? 
    }); 

</script> 
<script type="text/javascript"> 
function setQty(id, url) { 
var qty = document.getElementById('qty_' + id).value; 
document.getElementById('cart_button_' + id).innerHTML = '<button type="button" class="addToCart" onclick="setLocation(\'' + url + 'qty/' + qty + ')"></button>'; 
} 
</script> 

的問題是,當我點擊+或 - 按鈕,然後數量框值增加或減少2.請幫我解決這個問題。提前致謝。

+0

我把它變成一個小提琴和它的正常工作,這個問題必須在別的地方在你的代碼 - http://jsfiddle.net/1p97me9d/ – Bradley4 2015-02-25 04:44:44

+0

我找到了解決辦法。我只是將腳本放入footer.phtml文件並且工作正常 – user3785854 2015-02-25 17:25:01

回答

0

我找到了一個解決方案,因爲我將jquery腳本放入footer.phtml文件中,因爲它運行了2次。

現在,它的做工精細