funzione onclick non va

Clicca qui, è un esempio che potrebbe fare al caso tuo
ok però il mio problema è che non ho un solo checkbox ma 4 radio, e anche se lo uso, mi può dare solo true o false e non i valori del radio selezionato, inoltre il mio metodo di utilizzare gli id funziona nella prima parte, quindi non vedo perché non debba funzionare nella seconda

cmnq grazie mille !!!
 
ma comunque non funziona perché quando clicco il primo pulsante mi appare tutto il form2 senza eliminare uno dei campi input
A me funziona, presumo tu abbia fatto qualche altro errore oppure non hai fatto esattamente quanto ti ho indicato.

e in più cliccando il secondo bottone non calcola il risultato,
Nella funzione calcola() hai ancora questa roba? document.getElementById("incognita")

Nella console ti salta fuori qualche errore?

Ripeto:
Se non noti l'errore prova a postare nuovamente il codice html e javascript che hai modificato, vediamo se ci sono ulteriori errori.
 
inoltre il mio metodo di utilizzare gli id funziona nella prima parte
Il tuo metodo con id duplicati non può funzionare per i motivi che ti ho spiegato. Se tu ritieni che funziona, te lo dico apertamente, è inutile che io stia qui a discuterne. Se vuoi seguire i consigli, cerca di fidarti di ciò che ti si dice, diversamente fai come ritieni che sia giusto ma a quel punto io lascio spazio agli altri.
 
Il tuo metodo con id duplicati non può funzionare per i motivi che ti ho spiegato. Se tu ritieni che funziona, te lo dico apertamente, è inutile che io stia qui a discuterne. Se vuoi seguire i consigli, cerca di fidarti di ciò che ti si dice, diversamente fai come ritieni che sia giusto ma a quel punto io lascio spazio agli altri.
Non volevo dire questo, scusa, ora ho da fare ma domani provo ad attuare il metodo che tu mi hai suggerito
 
Non volevo dire questo, scusa, ora ho da fare ma domani provo ad attuare il metodo che tu mi hai suggerito
Nessun problema, se ho frainteso scusami tu per la mia reazione :)
Ok, fai sapere e se riscontri ancora problemi, inutile ripeterlo, prova a postare il codice da te modificato, così possiamo eventualmente ragionarci assieme.
 
  • Like
Reactions: Leonardo Scotti
Ciao a tutti :) ,
grazie ai vostri preziosi consigli sono riuscito a risolvere il problema con lo script!!!!
Di seguito poso il codice completo e corretto:

HTML:
<!DOCTYPE html>
<html>
<head>
<title>
piano inclinato
</title>
<style>

.risultato{
    border: solid, black, 3px;
}   
    
</style>
</head>
<body>
<form id="form1" class="form1">
<p>scegli incognita</p>
<input type="radio"  id="incognita1" name="incognita" value="Fe" required/><label for="Fe">Fe</label>
<input type="radio" id="incognita2" name="incognita" value="P" required/><label for="P">P</label>
<input type="radio" id="incognita3" name="incognita" value="h" required/><label for="h">h</label>
<input type="radio" id="incognita4" name="incognita" value="L" required/><label for="L">L</label>
<br>
<br>
<input type="button" value="procedi" id="button1" onclick="input();"/>
<br>
</form>
<form id="form2" class="form2" style="display: none;">
<br>
<p>inserisci dati</p>
<input type="text" placeholder="Fe" id="forzaEquilibrante" name="forzaEquilibrante" required/><br>
<input type="text" placeholder="P" id="peso" name="peso" required/><br>
<input type="text" placeholder="h" id="altezza" name="altezza" required/><br>
<input type="text" placeholder="L" id="lunghezza" name="lunghezza" required/><br>
<br>
<br>
<p>assicurati di inserire i valori in Newton o metri</p>
<br>
<br>
<input type="button" value="calcola" onclick="calcolo();"/><br>
</form>
<br>
<br>
<p class="risultato" id="risultato" style="display: none;">risultato:</p>

</body>
</html>

JavaScript:
<script>

function input(){

var input1 = document.getElementById("forzaEquilibrante");
var input2 = document.getElementById("peso");
var input3 = document.getElementById("altezza");
var input4 = document.getElementById("lunghezza");

var form1 = document.getElementById("form1");
var form2 = document.getElementById("form2");
var risultato = document.getElementById("risultato");



    form1.style.display = "none"
    form2.style.display = "block"
    risultato.style.display = "block"
    
    var incognita1 = document.getElementById("incognita1");
    var incognita2 = document.getElementById("incognita2");
    var incognita3 = document.getElementById("incognita3");
    var incognita4 = document.getElementById("incognita4");
    
    if(incognita1.checked == true ){
       input1.style.display = "none"
    }
    else if(incognita2.checked == true ){
       input2.style.display = "none"
    }
    else if(incognita3.checked == true ){
       input3.style.display = "none"
    }
    else if(incognita4.checked == true ){
        input4.style.display = "none"
    }
    else{
        window.alert("Oops.. assicurati di scegliere un incognita");
    }
}


function calcolo(){


var forzaEquilibrante = document.getElementById("forzaEquilibrante").value;
var peso = document.getElementById("peso").value;
var altezza = document.getElementById("altezza").value;
var lunghezza = document.getElementById("lunghezza").value;

    var incognita1 = document.getElementById("incognita1");
    var incognita2 = document.getElementById("incognita2");
    var incognita3 = document.getElementById("incognita3");
    var incognita4 = document.getElementById("incognita4");



    if(incognita1.checked == true ){
        document.getElementById("risultato").innerHTML = ( (altezza / lunghezza) * peso + "N");
    }
    else if(incognita2.checked == true ){
        document.getElementById("risultato").innerHTML = ( forzaEquilibrante /(altezza / lunghezza) + "N" );
    }
    else if(incognita3.checked == true ){
        document.getElementById("risultato").innerHTML = ( (forzaEquilibrante / peso) * lunghezzza + "m" );
    }
    else if(incognita4.checked == true ){
        document.getElementById("risultato").innerHTML = ( forzaEquilibrante / (peso * altezza) + "m" );
    }
    
}

</script>
 

Discussioni simili