Проверил, не работает ни так
sum += answers[ticket].indexOf(chbx[i].value) > -1?1:-10;
ни так
sum += answers[ticket].indexOf(chbx[i].value) > -1?1:-1;
<div id="soder" onclick="calc(0);">Оценка</div>
<script type="text/javascript">
var answers = [["v2","v4"]]; //Массив правильных ответов по 3 билетам
function calc(ticket){
var chbx = myform['testChbx'];
var sum=0;
for(var i = 0; i < chbx.length; i++){
if(chbx[i].checked) {
sum += answers[ticket].indexOf(chbx[i].value) > -1?1:-1;
}
}
gc.value = +gc.value+ +(sum>0);
}
</script>
Не совсем понял это выражение: -1?1:-1, что в скобках, что без скобок отдаёт "0";
И подсчет оценки в gc.value не происходит