1

我正在将 jQuery rateIt 与 Meteor ( https://github.com/dandv/meteor-jquery-rateit ) 一起使用,并且我希望在同一页面上有多个评级,例如:

亚历克斯****
倒钩*****
查克 *
朵拉***

为此,我需要每个人都有不同的 id,例如

Alex <div class="rateit" id="1"></div>
Barb <div class="rateit" id="2"></div>

...ETC...

如何在我的 javascript 代码中同时获得 id 和 rating?我试过类似的东西:

'click .rateit' : function(e) {
      console.log('value:'+$('#add-rating').rateit('value') );
      console.log(e.target.id);
}

和其他组合,但我仍然无法获得 id。有什么建议么?这个 SO 帖子可能是相关的:

如何在页面中多次使用星级(输入)字段

但是,坦率地说,我不明白如何在流星中实施建议的解决方案。

编辑:感谢@PSL 和@Barmar 对此的评论。现在,我只有一个小问题:为了将评级保存到数据库中(即为了让 Metor.call 执行),我必须单击评级 TWICE。关于如何解决这个问题的任何想法?(代码如下)

“点击 .rateit”:函数(e){

        e.preventDefault();
        $(".rateit").on('rated', function (event, value) {

            // console.log('id:' + event.target.id);
            // console.log('id:' + this.id);
            // console.log('评分:' + value)

            thisRating = 价值;
            Meteor.call('将评分放入数据库', {rating: thisRating}, function(error, id) {
                如果(错误)
                    返回警报(错误。原因);
                别的 {
                    // alert('成功');
                }
            });
        });

    }
4

0 回答 0