我有一个javascript页面,用户可以在其中回答问答游戏。
这些答案根据选择的内容而具有不同的值。
在游戏结束时,我想将这些值加起来并按最高到最低排序。
这是一个例子
type="radio" class="alcohol" name="alcohol1" value="0"
type="radio" class="alcohol" name="alcohol1" value="1"
我有多个班级,所以酒精是一种,抑郁是另一种
当用户提交答案时,我会将不同区域的值加起来,并希望按从高到低的顺序进行排序。
这是JSfiddle,所以您可以看到我的概念
http://jsfiddle.net/ETNDw/77/
谢谢您的帮助
最佳答案
试试这个代码
var answer = [
['depression', 0],
['alcohol', 0]
];
$(document).ready(function () {
$('input:radio').on('change', function () {
var name = $(this).attr('class');
var $depression_score = 0;
$("." + name + ":checked").each(function () {
$depression_score = $depression_score + parseInt($(this).val());
});
for (var i = 0; i < answer.length; i++) {
if (answer[i][0] == name)
answer[i][1] = $depression_score;
}
});
$('#mybutton').click(function () {
tryClicked();
});
});
function tryClicked() {
answer.sort(function (a, b) {
return b[1] - a[1];
});
for (var i = 0; i < answer.length; i++) {
alert("GroupName " + answer[i][0] + " ,Mark " + answer[i][1]);
}
}