jquery - 将输入值乘以跨度
问题描述
这是我的小提琴:
html:
<ul>
<li id="1">
<input type="text" name="1" class="parent" />
<input type="hidden" name="rank" value="8" class="rank" />
<span class="result"></span>
</li>
<li id="2">
<input type="text" name="2" class="parent" />
<input type="hidden" name="rank" value="1.75" class="rank" />
<span class="result"></span>
</li>
<li id="3">
<input type="text" name="1" class="parent" />
<input type="hidden" name="rank" value="10" class="rank" />
<span class="result"></span>
</li>
</ul>
JS:
$(document).on("change", ".parent", function() {
var sum = 0;
$(".parent").each(function() {
var rank = $("input").next(".rank").val();
sum = $(this).val() * rank;
});
$("input").next(".result").val(sum);
});
我有服务器端生成的列表,我需要将输入值相乘.parent * .rank
并将结果放入每个<li>
. 我试图使用.closest ()
和.next()
功能,但它不起作用。
谢谢你的帮助!
解决方案
从 OP 可以理解,因为没有一个名为use的函数,所以这.result
是行不通的。也改变 span
$("input").next(".result").val(sum);
span
.val()
.text()
var rank = $("input").next(".rank").val();
至
var rank = $(this).next(".rank").val();
编辑
基于OP的评论。尝试这个
$(document).on("change", ".parent", function() {
var sum = 0;
$(".parent").each(function() {
var rank = $(this).next(".rank").val();
sum = $(this).val() * rank;
$(this).parent().find(".result").text(sum);
});
});
推荐阅读
- react-native - React Native - 如何从 Expo 中的 TaskManager 访问承诺值?
- c# - C# linq 查询 - 如何使用值列表查询内部表
- android - 如何在 Android Room 中使用 ExecutorService?
- git - 我从 GitHub 克隆了存储库,但我的本地克隆存储库中缺少提交
- java - 使用 java-netbeans 在电报机器人上发送粗体文本
- reactjs - React - 如何控制导出/导入限制
- javascript - React Native:异步存储 setItem 导致应用程序崩溃
- java - BroadcastReceiver 不起作用(使用 android 中的下载管理器)
- java - JUnit AWSCredentials NoClassDefFoundError 与 LocalStackContainer
- node.js - 节点js jwt认证