我已经成功地向我的 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
提交
取消