Problema con sostituzione dei testi

di il
0 risposte

Problema con sostituzione dei testi

Sto realizzando un sito che consiste in una sorta di quiz. Nella schermata home sono presenti 6 pulsanti ognuno per un argomento (es. cinema, musica…). Per ciascun argomento sono disponibili 10  domande, che possono essere a risposta aperta, con 4 opzioni o vero o falso. Ho inserito le domande in un array bidimensionale (uno per argomento) diviso in questo modo: tipo (vero falso, aperta, 4 opzioni), domanda, opzioni, soluzione. Per ciascun tipo di domanda ho realizzato un diverso html. Quando nella home viene premuto un pulsante di una categoria viene richiamata una funzione che crea un numero casuale tra 0 e 9, che corrisponderà ad una riga dell'array. A questo punto tramite una serie di if ed else if il codice verifica di che tipo è la domanda e in base ad esso viene aperto uno dei tre file html. Adesso il programma dovrebbe cercare nel file html che ha appena aperto un paragrafo (<p>) che ha come id testo_domanda, e sostituirne il contenuto con la domanda presente nell'array. Il problema è che il paragrafo non viene cercato nel file che viene aperto all'oncklick del pulsant, ma nella schermata home, di conseguenza la domanda non compare a schermo. Il tipo di domanda è rappresentato da dei numeri (1= dkomanda aperta, 2=vero o falso, 4= 4 opzioni). A seguito il codice in js interessato:

const domande_cinema  =[
  ["4","Chi ha vinto il premio oscar come miglior attore non protagonista nel 2020?", "Tom Hanks,Brad Pitt,Leonardo DiCaprio,Al Pacino","Brad Pitt"],
  ["2", "The Dark Knight e Inception sono due film dello stesso regista.","Vero,Falso","Vero"],
  ["1","Scrivi il nome del regista di Pulp Fiction","","Quentin Tarantino"],
  ["4","Quale tra questi attori non ha mai interpretato Spiderman?","Tobey Maguire,Andrew Garfield,Tom Hardy,Tom Holland","Tom Hardy"],
  ["2","Scarface è un film di Martin Scorsese","Vero,Falso","Falso"],
  ["1","Quanti capitoli ha la saga di Scream?","","6"],
  ["4","Quale tra questi film ha vinto il premio oscar come miglior film straniero?","Parasite,Natale in India,L'Odio,E' stata la mano di Dio","Parasite"],
  ["2","Vero o falso? 'Avatar' è il film con il maggior incasso di tutti i tempi.","Vero,Falso","Vero"],
  ["1","In che anno è uscito al cinema il primo film di Star Wars?","","1977"],
  ["4","Quale premio viene assegnato al Festival del cinema di Venezia?","David di Donatello,Palma d'Oro,Orso d'Oro,Leone d'Oro","Leone d'Oro"]
]

function getRandomInt(max) {
  return Math.floor(Math.random() * max);
}
function vaia2Dom() {
  window.location.href = '2dom.html';
}
function vaia4Dom() {
  window.location.href = '4dom.html';
}
function vaia1Dom() {
  window.location.href = '1dom.html';
}
function apriCinema(){     

    console.log(domande_cinema[1][0]);
    let n=getRandomInt(10);
    var testo= domande_cinema[n][1];
    if(domande_cinema[n][0]==4){
      vaia4Dom();
      var element = document.getElementById("testo_domanda");
      element.innerHTML = "Hello World!";
    } else if(domande_cinema[n][0]==2){
      vaia2Dom();
      console.log("2!");
    } else if(domande_cinema[n][0]==1){
      vaia1Dom();
      console.log("1!");
    }
Devi accedere o registrarti per scrivere nel forum
0 risposte