如何在选择模态框选项后仅将idpelanggan存入输入文本框?
解决方案
只需要分两步修改,就能在保留模态框双字段显示的同时,仅将idpelanggan的值存入目标输入框:
1. 调整PHP循环生成单选按钮的逻辑
把单选按钮的value属性单独设置为idpelanggan的值,标签部分保持原有的双字段组合显示即可。示例代码如下:
<?php foreach($pelangganList as $pel) { ?> <div class="form-check"> <!-- 将value设为仅idpelanggan的值 --> <input class="form-check-input" type="radio" name="pelangganRadio" id="radio-<?php echo $pel['idpelanggan']; ?>" value="<?php echo $pel['idpelanggan']; ?>"> <!-- 标签依旧展示双字段内容 --> <label class="form-check-label" for="radio-<?php echo $pel['idpelanggan']; ?>"> <?php echo $pel['idpelanggan'] . ' - ' . $pel['nm_pelanggan']; ?> </label> </div> <?php } ?>
2. 修改JavaScript赋值逻辑
不再读取标签的文本内容,直接获取单选按钮的value(即idpelanggan)存入输入框。
原生JavaScript版本
// 给所有单选按钮绑定切换事件 document.querySelectorAll('input[name="pelangganRadio"]').forEach(radio => { radio.addEventListener('change', function() { if (this.checked) { // 直接取当前选中单选的value值,写入输入框 document.getElementById('getPelanggan').value = this.value; } }); });
jQuery版本(如果项目使用jQuery)
$('input[name="pelangganRadio"]').on('change', function() { $('#getPelanggan').val($(this).val()); });
这样修改后,模态框里依然会显示idpelanggan - nm_pelanggan的完整内容,但选中选项时,只有idpelanggan的值会被存入getPelanggan输入框。
内容的提问来源于stack exchange,提问作者Norvian Syah
相关产品推荐
相关产品推荐

