javascript - 我想选择 2 个不同的输入(单选按钮)并划分它们的值并将结果显示为警报
问题描述
<form id="payments" >
<input type="radio" id="firstpay" name="pay" value="999" >
<label for="firpay">999 €</label>
<input type="radio" id="secondpay" name="pay" value="1599" >
<label for="firpay">1599 €</label>
<input type="radio" id="thirdpay" name="pay" value="2999">
<label for="firpay">2999 €</label>
</form>
所以我从这里选择 1 个输入,从下面选择一个:
<input name="answer" id="answer_1" type="radio" value="0">
</td>
<td>
<input name="answer" id="answer_2" type="radio" value="7">
</td>
<td>
<input name="answer" id="answer_3" type="radio" value="15">
</td>
<td>
<input name="answer" id="answer_4" type="radio" value="24">
</td>
<td>
<input name="answer" id="answer_5" type="radio" value="36">
</td>
<td>
<input name="answer" id="answer_6" type="radio" value="50">
因此,假设我选择带有 id firstpay 的输入,当我从第二种形式中选择其他输入时,我想根据第二个输入获得( 999 / 0 、 7 、 15 ...)。我希望结果以警报的形式出现
解决方案
跟踪支付和回答的价值。
为输入注册“更改”事件,当两个值都可用时显示警报。试试这个片段。
const track = {
pay: null,
answer: null,
};
document.querySelectorAll("input").forEach((el) =>
el.addEventListener("change", (e) => {
const type = e.target.name;
const value = e.target.value;
track[type] = value;
if (track.pay !== null && track.answer !== null) {
alert(
`Avg is ${track.pay} / ${track.answer} = ${track.pay / track.answer}`
);
}
})
);
<form id="payments" >
<input type="radio" id="firstpay" name="pay" value="999" >
<label for="firpay">999 €</label>
<input type="radio" id="secondpay" name="pay" value="1599" >
<label for="firpay">1599 €</label>
<input type="radio" id="thirdpay" name="pay" value="2999">
<label for="firpay">2999 €</label>
</form>
<td>
<input name="answer" id="answer_1" type="radio" value="0">
</td>
<td>
<input name="answer" id="answer_2" type="radio" value="7">
</td>
<td>
<input name="answer" id="answer_3" type="radio" value="15">
</td>
<td>
<input name="answer" id="answer_4" type="radio" value="24">
</td>
<td>
<input name="answer" id="answer_5" type="radio" value="36">
</td>
<td>
<input name="answer" id="answer_6" type="radio" value="50">
</td>
推荐阅读
- python - 保存然后使用 Python 启动 Excel 文件
- laravel - 如何在 Laravel Spatie 媒体库中从磁盘添加多个媒体?
- signal-processing - Qualcomm DSP:带有命令行参数的 hexagon-sim
- security - 如何保护 indexedDB 中不可提取的密钥?
- javascript - 如果我刷新页面,在浏览器中重复循环再次显示相同的数据
- spring-mvc - javax.servlet.ServletException: SRVE0207E: 未捕获的由 servlet 创建的初始化异常
- pytorch - 自定义 Jacobian 实现给出了不同的损失值
- java - 使用 Graphql - com.graphql-java-kickstart 和 spring webflux 返回类型
- websocket - 错误后 Eclipse Jetty WebSocket 客户端中的线程终止问题
- python - Docker 中的 Python 日志记录。如何访问 Docker 容器内形成的日志文件