Prova questo....
codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
<script language="JavaScript" type="text/javascript">
<!--
function controlla(aForm) {
var list = new Array();
var names = new Array();
j = 0;
//--------- Numero degli elementi nel form
len = aForm.children.length;
//--------- Ciclo su tutti gli elementi che dipendono dal form
for (i=0;i<len;i++) {
curObj = aForm.children(i);
//--------- Prendo solo i tag di tipo radio
if (curObj.type == 'radio') {
//--------- Se l'elemento non è già stato inserito nell'array
if (list[curObj.name] == null) {
//-------- Inserisco in un array i nomi dei radio
names[j] = curObj.name;
//-------- Inserisco in un array per un nome di radio se é selezionato o no
list[curObj.name] = curObj.checked;
//-------- Incremento per il prossimo elemento
j++;
} // if (list[curObj.name] == null)
//--------- Se l'elemento non è selezionato posso eventualmente passarlo a selezionato (true)
if (list[curObj.name] == false) {
list[curObj.name] = curObj.checked;
} // if (list[curObj.name] == false)
} // if (curObj.type == 'radio')
} // for (i=0;i<len;i++)
//--------- Ciclo sull'array dei nomi
for (i=0;i<names.length;i++) {
//--------- Ricavo il valore della selezione o no per il nome del radio
aValue = list[names[i]];
if (aValue == false) {
alert('Non hai risposto a tutte le domande !!!');
return false;
} // if (aValue == false)
} // for (i=0;i<names.length;i++)
return true;
} // function controlla(aForm)
//-->
</script>
</head>
<body>
<form id="form1" method="post" onsubmit="return controlla(this)">
La capitale dell'Italia è Roma
<input type="radio" name="citalia" value="0">No
<input type="radio" name="citalia" value="1">Si
<input type="radio" name="citalia" value="2">No So
La capitale della Francia è Roma
<input type="radio" name="cfrancia" value="0">No
<input type="radio" name="cfrancia" value="1">Si
<input type="radio" name="cfrancia" value="2">No So
<input type="submit" value="Invio">
</form>
</body>
</html>