我正在使用jQuery rateIt和Meteor(https://github.com/dandv/meteor-jquery-rateit),我希望在同一页面上有多个评级,例如:
Alex **** Barb ***** Chuck * Dora ***
为此,我需要每个人都有一个不同的id,例如
Alex <div class="rateit" id="1"></div>
Barb <div class="rateit" id="2"></div>
...等...
如何在我的javascript代码中获取id和评级?我试过像:
'click .rateit' : function(e) {
console.log('value:'+$('#add-rating').rateit('value') );
console.log(e.target.id);
}
和其他组合,但我仍然无法获得id。有什么建议?这篇SO帖子可能是相关的:
How to use star rating (input) field many times in a page
但是,坦率地说,我不明白如何在流星中实现所提出的解决方案。
编辑:感谢@PSL和@Barmar对此的评论。现在,我只有一个小问题:为了将评级保存到数据库(即为了让Metor.call执行),我必须点击评级TWICE。有关如何解决此问题的任何想法? (代码如下)'click .rateit' : function(e) { e.preventDefault(); $(".rateit").on('rated', function (event, value) { // console.log('id:' + event.target.id); // console.log('id:' + this.id); // console.log('Rating:' + value) thisRating = value; Meteor.call('Put rating in DB', {rating: thisRating}, function(error, id) { if (error) return alert(error.reason); else { // alert('success'); } }); }); }