繁体   English   中英

流星:如何根据部分中复选框的数量设置数字

[英]Meteor: How to set a number based on the number of checked boxes within a section

我目前有一个包含多个复选框的多节形式。 我想做的是在总数量旁边显示复选框的数量。 我的总显示效果很好,但是我无法终生想出一种方法来遍历输入,成功找到:checked并打印出该数字。

我认为导致我出现问题的主要原因是,每次选中新框时,它都需要更新。 这是一些代码。

事件处理程序

'click input[type=checkbox]': function(){
    Session.set('selectedPlayerCount', n);
    Session.get('selectedPlayerCount');
}

这里的目标是设置选定玩家的数量,并将其传递给模板/帮助程序。

帮手

countSelected: function(){
    n = 0;
    n++;
    var selectedPlayerCount = Session.get('selectedPlayer');
    return selectedPlayerCount;
}

在助手中,每次事件触发时我都尝试进行迭代,因此将值增加一。 我知道将n重置为0会导致一些问题,并且我知道需要将其更改为其他值。 我只是不知道需要在何处设置变量以提供默认值。

模板

<header>
   <p>{{ countSelected }}</p>
</header>

我现在在这里要做的只是打印出助手所提供的值。 我认为这不会引起任何问题。

TL; DR-如何计算表单的某一部分内已检查输入的数量,并为每个输入增加一个值,然后在每次更改时将其返回。

我是新手,但也许可以这样做:在会话变量中将帐户定义为零,每次选择复选框时,您都会增加会话变量的值

Session.set("countPlayersChecked", 0);
Template.proof.helpers({
    countSelected: function () {
        return Session.get("countPlayersChecked");
    }

});

Template.proof.events({
    'click input[type=checkbox]': function (event) {

        if($(event.target).is(':checked'))
            Session.set("countPlayersChecked", Session.get("countPlayersChecked")+1);
        else
            Session.set("countPlayersChecked", Session.get("countPlayersChecked")-1);
    }
});

希望它有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM