簡體   English   中英

Ajax上的click事件加載了內容和動態ID

[英]click event on ajax loaded content and dynamic id

我已經使用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");
        });
});

嘗試將事件綁定到文檔,這確保了只要在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");
        });
});

有兩種方法可以將事件處理程序附加到Ajax加載的內容上。

  1. 將事件附加到ajax請求的完成回調上。 (參考: jQuery Ajax

     $.ajax({ url: "xyz.php", }) .done(function( content ) { $("#cart-sidebar").on("click", '.increment_qty_'+itemId, function(event) { console.log("work"); }); }); 
  2. 使用事件委托 這將使您甚至在將來都可以將事件偵聽器附加到元素。

只是喜歡:

jQuery(document).ready(function(){
        var itemId = '<?php echo $_item->getId(); ?>';

         jQuery(document).on("click", '.increment_qty_'+itemId, function(event) {
            console.log("work");
        });


});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM