我使用ajax加载内容。需要调用ajax加载的内容。我也试过一些代码,但没有运气。
jQuery(document).ready(function(){
var itemId = '<?php echo $_item->getId(); ?>';
jQuery("#cart-sidebar").on("click", '.increment_qty_'+itemId, function(event) {
console.log("work");
});
jQuery("#cart-sidebar").on("click", '.increment_qty_<?php echo $_item->getId(); ?>', function(event) {
console.log("work");
});
});
答案 0 :(得分:0)
尝试将事件绑定到文档,这可以确保无论何时在DOM中找到元素,都可以触发
jQuery(document).ready(function(){
var itemId = '<?php echo $_item->getId(); ?>';
jQuery(document).on("#cart-sidebar","click", '.increment_qty_'+itemId, function(event) {
console.log("work");
});
jQuery(document).on("#cart-sidebar","click", '.increment_qty_<?php echo $_item->getId(); ?>', function(event) {
console.log("work");
});
});
答案 1 :(得分:0)
将事件处理程序附加到Ajax加载的内容有两种方法。
将事件附加到ajax请求的完成回调。 (参考:jQuery Ajax)
$.ajax({
url: "xyz.php",
})
.done(function( content ) {
$("#cart-sidebar").on("click", '.increment_qty_'+itemId, function(event) {
console.log("work");
});
});
使用Event Delegate。这将允许您将事件监听器附加到元素,即使将来。
答案 2 :(得分:0)
就像这样:
jQuery(document).ready(function(){
var itemId = '<?php echo $_item->getId(); ?>';
jQuery(document).on("click", '.increment_qty_'+itemId, function(event) {
console.log("work");
});
});