2016-07-26 45 views
0

我試圖在產品數量發生變化時更新購物車。但jQuery代碼在第一次更新購物車項目後停止工作。更改事件只發生一次火災

這裏是jQuery代碼

jQuery(document).ready(function($){ 
    $("input.qty").on('keyup change click',function(){ 
     $('input[name=update_cart]').trigger('click'); 
    }); 
}); 
+1

與您提供應該工作的代碼。但是,您需要分享更多信息。截至目前,我認爲我們不能提供幫助。 – Satpal

+1

請添加更多的信息,你完整的代碼或(不)工作jsfiddle。 – eisbehr

+0

嘗試改變這一行如下'$('input [name = update_cart]')。click();' – markoffden

回答

1

請嘗試以下代碼。

jQuery(document).ready(function($){ 
    $(document).on('keyup change click','input.qty', function() { 
    $('input[name=update_cart]').trigger('click'); 
    }); 
}); 

如果您需要更多信息,請告訴我。

+0

我試過你的代碼,但沒有運氣。這裏是網站鏈接 http://vccc.asn.au/cart/ – Javid

+0

你可以請嘗試以下代碼 $(this).closest('form')。submit(); 而不是 $('input [name = update_cart]')。trigger('click'); –

+0

它的工作原理,謝謝 – Javid

0

使用輸入事件

jQuery(document).ready(function($){ 
    $("input.qty").on('input',function(){ 
     $(this).closest('form').submit(); 
    }); 
}); 
0

您的代碼工作。查看下面代碼的結果。

jQuery(document).ready(function($){ 
 
var count = 0; 
 
    $("input.qty").on('keyup change click',function(){ 
 
     $('input[name=update_cart]').trigger('click'); 
 
     count++; 
 
    }); 
 
    $('input[name=update_cart]').click(function(e){ 
 
     $(this).val('Click called '+count); 
 
    }); \t 
 
});
<script src="http://code.jquery.com/jquery-1.10.2.js"></script> 
 
<input class="qty" name="test"/> 
 
<input name="update_cart"/>