Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 所有复选框的总值属性_Javascript_Jquery_Meteor - Fatal编程技术网

Javascript 所有复选框的总值属性

Javascript 所有复选框的总值属性,javascript,jquery,meteor,Javascript,Jquery,Meteor,此jQuery代码尝试合计选中的class=valid的输入元素的所有值。怎么做的?thx Template.checkbox.events{ '单击。有效':=>{ $input.valid:已选中。每个函数{ console.logthis;//在此处合计 } } }; {{label}} 选择器很好,现在只需在每个循环中增加一个值。您可以使用.map将所有值获取到一个数组,然后将其减少: 好的,您需要在click处理程序中使用一个变量作为sum,然后在.each函数中,将$this.val

此jQuery代码尝试合计选中的class=valid的输入元素的所有值。怎么做的?thx

Template.checkbox.events{ '单击。有效':=>{ $input.valid:已选中。每个函数{ console.logthis;//在此处合计 } } }; {{label}}
选择器很好,现在只需在每个循环中增加一个值。您可以使用.map将所有值获取到一个数组,然后将其减少:


好的,您需要在click处理程序中使用一个变量作为sum,然后在.each函数中,将$this.val添加到sum变量中。凭猜测我不知道流星,所以我不能肯定,但那是我要走的路。对于循环上的求和很好。您有JSFIDLE吗?在Meteor中的模板事件处理程序之外创建变量不是一个好主意。如果您需要它超出事件助手的范围,它应该存储在会话中。@SterlingArcher我对meteor一无所知,所以这解释了我在这方面的错误,但不管怎样,需要设置一个变量来保存答案和需要向该变量添加值的总体想法是正确的。@SterlingArcher-我可以lambda reduce调用-但jQuery每个都可能不应该,会弄乱这个值我很确定有一种更快速的方法来处理这个问题,但我鄙视流星所以我会agree@SterlingArcher-我从来没有用过流星。。。结合我们的知识,我们可以使用更多的jQuery!
var total = null;
Template.checkbox.events({
  'click .valid': () => {
    $("input.valid:checked").each( function () {
      total += parseFloat(this.value);
    })
  }
});
console.log(total);
var total = $("input.valid:checked").map( function () {
  return this.value;
}).get().reduce(function(t, number) {
    return t += parseInt(number, 10);
}, 0);