Fai attenzione alla funzione document.write("qualcosa")
Essa ha due comportamenti, completamente diversi tra loro:
1) Se viene eseguita durante il 'caricamento' della pagina, scrive, nel punto del documento in cui viene invocata, la stringa passata.
2) Se viene eseguita dopo che la pagina è stata caricata, per esempio a fronte della pressione su un pulsante, beh ... SOSTITUISCE TUTTO IL DOCUMENTO con la stringa passata!
Quindi, tu dici che va una volta e si blocca: infatti, nel momento in cui tu clicchi uno dei pulsanti, la pagina scompare ed al suo posto appare la sola domanda!
Come risolvere?
Per prima cosa: la document.write, a mio avviso, NON VA MAI USATA.
Poi: ho corretto la tua pagina utilizzando la document.getElementById : usala come spunto!
codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<input type="hidden" name="scelta_effettuata" id="scelta_effettuata">
<script type="text/javascript">
matrice_domande= new Array("domanda1","domanda2","domanda3","domanda4","domanda5");
matrice_risposte= new Array("A","B","C","D","A");
Q = matrice_domande.length;
quale_domanda=Math.round(Math.random()*(Q-1));
function mostra_domanda() {document.getElementById("domanda").innerHTML=matrice_domande[quale_domanda];}
function prendiValore(scelta){
document.getElementById("scelta_effettuata").value= scelta;
if (scelta==matrice_risposte[quale_domanda]) {
alert("La risposta era corretta")
quale_domanda=Math.round(Math.random()*(Q-1));
mostra_domanda();
}
else
{
alert("La risposta era sbagliata")
quale_domanda=Math.round(Math.random()*(Q-1));
mostra_domanda();
}
}
</script>
</head>
<body>
<div id="domanda"></div>
<button onClick="prendiValore('A');">scegli A</button>
<button onClick="prendiValore('B');">scegli B</button>
<button onClick="prendiValore('C');">scegli C</button>
<button onClick="prendiValore('D');">scegli D</button>
<script type="text/javascript">
// Attenzione: la chiamata è stata messa qua per essere sicuri che il browser sappia dov'è il div!
mostra_domanda()
</script>
</body>
</html>
HTH
Zappa