JS星级系统

问题描述 投票:0回答:1
var num_stars_løn = 0
var num_stars_team = 0
var num_stars_trivsel = 0

function add_rating(num_rating, section) {
    if (section == "løn"){
        num_stars_løn = num_rating;
        document.getElementById("num_stars_løn").value = num_rating;
    }
    else if (section == "teambuilding"){
        num_stars_team = num_rating;
        document.getElementById("num_stars_team").value = num_rating;
    }
    else if (section == "trivsel") {
        num_stars_trivsel = num_rating;
        document.getElementById("num_stars_trivsel").value = num_rating;
    }

    for(var i = 1; i < num_rating + 1; i++) {
        var section_id =  section + " " + i
        document.getElementById(section_id).innerHTML = "&#x2605;"
    }
    if (num_rating < 5){
        for(var i = 5; i > num_rating; i--) {
            var section_id =  section + " " + i
            document.getElementById(section_id).innerHTML = "&#x2606;"
        }
    }


    if (num_stars_team > 0 && num_stars_løn > 0 && num_stars_trivsel > 0){
        show_mean_rating();
    }
}

function show_mean_rating() {
    var mean = document.getElementById("num_stars_løn").value + 
        document.getElementById("num_stars_team").value + 
        document.getElementById("num_stars_trivsel").value;
    document.getElementById("mean_rating").innerText = "Gennemsnitlig rating: " + (mean/3).toFixed(2);
}

HTML

我已经使用JavaScript和HTML对某些主题(总共3个)进行了星级评分。你们其中一个人知道如何计算每个主题获得多少颗星的平均值/均值吗?因此,这不是三个主题的总和,而是点击/星级的每个主题的平均值。

现在,它可以算出总共15颗星的平均值。 (每个主题都有5颗星),但是应该计算每个主题的平均值。我在想每次用户单击星标时每次会议都有一个计数器,但我不确定。然后也许用给定的票数/星星数来划分星星]

javascript html mean rating
1个回答
0
投票

要获取每个部分的均值,您需要使用计数器捕获每个投票(可以以州/州或纯文本格式存储,并带有#个投票),然后将所有投票的总和除以投票数。

[这可以通过投票数组来完成,每次用户单击评分时,将每个投票添加到数组中,将数组中的所有值相加,然后除以array.length。

© www.soinside.com 2019 - 2024. All rights reserved.