下面的代码将根据另一个输入自动填充 2 个输入表单。现在它可以工作,但仅适用于第一个循环。它不适用于第二个和第三个循环
..我知道我们必须使用数组之类的东西,但我不知道如何做到这一点..
<script>
$(document).ready(function() {
$('#totalofservices').keyup(function(){
$("#totalontarget").val($(this).val());
$("#totalofftarget").val("0");
});
});
</script>
for($x=1; $x<=3; ++$x)
{
echo "<tr>
<td>Zone $x</td>
<td><input style='text-align:center' class='form-control' type='text' size='20' id='totalofservices' name='totalofservices'>
</td>
<td><input style='text-align:center' class='form-control' type='text' size='20' id='totalontarget' name='totalontarget'></td>
<td><input style='text-align:center' class='form-control' type='text' size='20' id='totalofftarget' name='totalofftarget'></td>
</tr>";
}
最佳答案
不需要数组。尝试使用 class Name 而不是 id
。因为整个文档 id 是唯一的 .Closest()
它将针对 tr 。 find()
用于查找子项
<script>
$(document).ready(function() {
$('.totalofservices').keyup(function(){
$(this).closest('tr').find(".totalontarget").val($(this).val());
$(this).closest('tr').find(".totalofftarget").val("0");
});
});
</script>
for($x=1; $x<=3; ++$x)
{
echo "<tr>
<td>Zone $x</td>
<td><input style='text-align:center' class='form-control totalofservices' type='text' size='20' id='totalofservices' name='totalofservices'>
</td>
<td><input style='text-align:center' class='form-control totalontarget' type='text' size='20' id='totalontarget' name='totalontarget'></td>
<td><input style='text-align:center' class='form-control totalofftarget' type='text' size='20' id='totalofftarget' name='totalofftarget'></td>
</tr>";
}
关于php - 自动填充输入表单数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44878321/