如何为每个复选框添加新输入? - Codeigniter
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为每个复选框添加新输入? - Codeigniter相关的知识,希望对你有一定的参考价值。
我的项目中有代码html和php(codeigniter):
<div class="row">
<div class="col-md-8">
<?php foreach($hardware as $hardware): ?>
<input type="checkbox" id="<?=$hardware['id_elemento']?>" name="hardware[]" value="<? =$hardware['id_elemento']?>">
<label class="mx-2" for="<?=$hardware['id_elemento']?>"><?=$hardware['elemento']?> </label>
<?php endforeach; ?>
</div>
<div class="col-md-6">
<input type="number" placeholder="Cantidad" id="mname" name="mname" class="form-control col-2" />
<hr>
</div>
</div>
var checkbox = document.getElementById('29');
var input = document.getElementById('mname');
checkbox.addEventListener('click', function () {
if (input.style.display != 'block') {
input.style.display = 'block';
} else {
input.style.display = '';
}
});
我想要做的是为每个复选框添加一个新输入..每个新输入类型编号是我要在列表中检查的每个硬件的数量,但是使用此代码我只需输入一个..每个复选框有一个不同的ID(29,30,31,32)..等于硬件[]和输入名称/ ID:数量[]
我怎么能为每个人做这个?对不起,我的英语不好
答案
- 在复选框上创建一个事件(onchange)。
- 如果现在选中了单击的复选框,则启动一个功能。
- 此功能必须创建适合您需求的自定义输入:
var input = document.createElement("input"); input.setAttribute("class", "foo"); //etc...
- 最后将它附加到你想要的地方:
yourdiv.appendChild(input)
示例:var checkbox = document.querySelector("input[name=checkbox]"); checkbox.addEventListener( 'change', function() { if(this.checked) { // Checkbox is checked.. } });
以上是关于如何为每个复选框添加新输入? - Codeigniter的主要内容,如果未能解决你的问题,请参考以下文章