如何将具有相同ID和名称的多个输入类型号相乘

Posted

技术标签:

【中文标题】如何将具有相同ID和名称的多个输入类型号相乘【英文标题】:How to multiply multiple input type number with the same ID and name 【发布时间】:2019-07-09 02:28:39 【问题描述】:

此代码运行良好,但我的代码有多个具有相同 ID 和名称的输入。我认为多个语句无法识别另一个 ID。

while($d = mysqli_fetch_array($data))
?>
<tr>
<td align="text-center"><?php echo $no++; ?></td>
<td align="text-center"><input type="text" name="naran[]" value="<?php echo $d['naran'];?>"></td>
<td align="text-center"><input type="hidden" name="kode_sasan[]" value="<?php echo $d['kode_sasan'];?>"></td>
<td align="text-center"><input type="number" name="hamutuk[]" onfocus="sr()" onblur="psr()" id="hamutuk" ></td>
<td align="text-center"><input type="number" name="total[]" id="total" ></td>
<td align="text-center"><input type="hidden" value="<?php echo $d['folin_faan'];?>" name="folin_faan[]" onfocus="sr()" onblur="psr()" id="folin_faan""></td>
<td><a href="update.php?edit=<?php echo $d['id']; ?>"" type="button" class="btn btn-info glyphicon glyphicon-pencil"></a>
    <a onclick="return confirm('Ita boot Hakarak Duni atu hamos?')" href="hamosfaan.php?hms=<?php echo $d['kode_sasan']; ?>"  type="button" class="btn btn-danger glyphicon glyphicon-remove"></a>
  </td>
 </tr>
<?php  ?>
</table>
<button   type="submit" name="sosa" class="btn btn-primary ">Processa</button>
</form>
 <script type="text/javascript">
function kms()
Interval = setInterval ("sr()",1);

function sr()
folin_faan=parseFloat(document.getElementById("folin_faan").value);
hamutuk=parseFloat(document.getElementById("hamutuk").value);
total = folin_faan * hamutuk;
 document.getElementById("total").value=total.toFixed(2);

function psr()
clearInterval(Interval);

</script>

【问题讨论】:

具有相同 id 的多个输入不是有效的 html。 id 在文档中必须是唯一的。 任何关于 id 的想法都必须是唯一的。到底有没有用? 你可以使用类来代替。您可以将事件侦听器添加到用于计算总数的字段中,并在与导致事件的输入相同的行中查找其他相关输入。 【参考方案1】:

不要使用相同的 ID。 你可以让你的 id 独一无二。在您的 while 循环中,您可以操作 ID。

例如

<td align="text-center"><input type="number" name="hamutuk[]" onfocus="sr(<?php echo $no;?>)" onblur="psr(<?php echo $no;?>)" id="hamutuk<?php echo $no;?>" ></td>

【讨论】:

如何使用 id 来显示结果:

以上是关于如何将具有相同ID和名称的多个输入类型号相乘的主要内容,如果未能解决你的问题,请参考以下文章

当多个输入具有相同名称时,根据输入类型设置 jquery 表单验证

通过php中的POST具有相同名称的多个输入不起作用[重复]

具有相同名称属性的输入字段的多个表单?是好是坏?

使用 jquery 验证器验证具有相同名称的多个文本框仅验证第一个输入

用openCV将两个图像相乘

Laravel提交表单具有相同的输入名称ajax