javascript - Jquery 用于除焦点之外的每个输入元素

标签 javascript jquery

我可以使用哪个选择器来迭代页面上除当前焦点元素之外的所有输入元素?

这是我目前拥有的:

total = 0.00;

$(".numbers").each(function() {
  total += parseFloat($(this).val());
});
<input type="number" class="numbers" />

最佳答案

我不喜欢在循环本身之外初始化变量,因此我个人建议使用 .toArray().reduce()

$("input:first").focus();   //for demo only

var total = $(".numbers:not(:focus)").toArray().reduce((sum, element) => sum + Number(element.value),0);
console.log(total);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="numbers" value="5" />
<input type="text" class="numbers" value="2" />
<input type="text" class="numbers" value="12" />

关于javascript - Jquery 用于除焦点之外的每个输入元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52694990/

相关文章:

javascript - 为 Google map 信息框创建自定义关闭按钮

javascript - 如何通过 console.dir ("string"+object) 使用控制台

javascript - 如果只选中一个复选框,如何向前跳过一步并设置一个值

Javascript 和 Ruby on Rails

javascript - 镜像多个选择字段 jquery/javascript

javascript - 循环遍历 ul li 并使用 insertBefore 将图像向上移动两个元素

javascript - 如何在运行时交换 jquery css

javascript - 在表格单元格中自动调整背景图像

jQuery 效果导致元素在动画期间重新定位

javascript - 访问 jQuery 中的类属性 - 键值对