1 回答

TA貢獻2037條經驗 獲得超6個贊
首先,您遇到的問題是任何單擊的按鈕都會觸發事件,其次數與子 DOM 元素中的按鈕數一樣多。因此,您需要做什么才能獲得觸發事件的確切元素:
//with message
$product_id = 'remove_product' . $products[$i]['id'];
$remove_product = ['params' => 'id="'. $product_id .'"'];
$trash = HTML::link($this->link(null, 'Cart&Delete&products_id=' . $products[$i]['id']), HTML::button(null, 'fas fa-trash',null, null, $remove_product)) . ' ';
$but_id = $product_id;
echo "<script>
var button = $('#". $but_id . "');
$(document).on('click', button, function (event) {
console.log('button clicked');
//$('form').submit(function () {
//if (!window.confirm('Are you sure?')) return false;
//})
})
</script>
";
$(document).on('click', 'button', function(e){
alert(this.id);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
<button id="product_delete1" data-id="1">Delete</button>
<button id="product_delete2" data-id="2">Delete</button>
<button id="product_delete3" data-id="3">Delete</button>
</form>
- 1 回答
- 0 關注
- 114 瀏覽
添加回答
舉報