RISEBY
2021-08-26 16:23:30
我已經成功地向我的 php foreach 循環添加了一個迭代器,這樣我就可以為表中的每一行創建一個唯一的按鈕。<?php $i = 1;?>@foreach($getPromoCodes as $codes) <input type="hidden" name="promo_code_id" id="promo_code_id[{{$i}}]" class="promo_code_id" value="{{ $codes->promo_codet_id }}"><?php $i++;?>@endforeach但是,我無法弄清楚,一旦按下按鈕,如何從單擊的按鈕獲取輸入的值。這是由于每個按鈕與迭代器的唯一性。var promo_codet_id = document.getElementsByClassName("promo_code_id");當我控制臺記錄它時,這將返回 undefined 。我需要如何為此更改我的 JS?
2 回答

慕尼黑5688855
TA貢獻1848條經驗 獲得超2個贊
你可以這樣做:
<div class="elements">
<?php $i = 1;?>
<?php foreach($getPromoCodes as $codes): ?>
<input type="hidden" name="promo_code_id" id="promo_code_id[{{$i}}]" class="promo_code_id" value="{{ $codes->promo_codet_id }}">
<a href="#" class="btn" data-id="<?= $i ?>">Link </a>
<?php $i++;?>
<?php endforeach; ?>
</div>
查詢:
$('.elements').on('click', '.btn', function(e){
e.preventDefault();
console.log($(this).data('id'));
});

臨摹微笑
TA貢獻1982條經驗 獲得超2個贊
您可以在調用 javascript 函數時使用this.value:
<input type="hidden" name="promo_code_id" id="promo_code_id[{{$i}}]" class="promo_code_id" value="{{ $codes->promo_codet_id }}" onclick="doSomething(this.value); return false;">
添加回答
舉報
0/150
提交
取消