[Javascript] [html5] operazioni matematiche come output di un form

psicona

Nuovo Utente
10 Mar 2017
18
1
3
Buongiorno a tutti,
sto seguendo diversi tutorial online per capire meglio le novità e i cambiamenti apportati dall'HTML5.

Sto facendo alcune prove e il quesito che vi pongo parte da questa parte di codice che sto testando in un semplice file .html:
Codice:
<form id=”areaRettangolo” onsubmit="return false" oninput="risultato.value = parseInt(base.value) * parseInt(altezza.value)">
       Base <input name="base" type="number" step="any" min="0"><br>
       Altezza <input name="altezza" type="number" step="any" min="0"><br><br>
       Area = <output name="risultato"></output>
</form>

inserisco i numeri e mi viene restituito il risultato. Fin qui tutto ok.

Domanda 1: c'è modo di avere il risultato a seguito del click su un bottone submit?

Domanda 2: così come posso facilmente fare le quattro operazioni matematiche, posso fare anche l'elevazione a potenza? Con Javascript utilizzo Math.pow, ma come inserirlo nel form e con quale sintassi?

Grazie in anticipo per l'eventuale aiuto.

Luca
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ciao, quello che hai scritto all'interno dell'evento oninput="" è javascript, puoi utilizzare tutte le funzioni di javascript ma questo potevi farlo anche con l'html4. Puoi assegnare l'evento onclick="" ad un bottone ed eseguire il codice al click.
 

psicona

Nuovo Utente
10 Mar 2017
18
1
3
Grazie. In effetti era abbastanza banale come quesito.
Provato e funziona.
Quindi posso lasciarlo sull'evento onclick del button oppure passare i valori ad un file .js che esegue e restituisce il valore.
Per quest'ultima opzione, se lascio "risultato.value = ..." assegna semplicemente il risultato.
Se volessi invece che in risultato ci fosse una stringa html e non solo il valore, come dovrei fare?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
non credo di aver capito la domanda,
puoi concatenare una stringa con una variabile utilizzando il segno +
output = "stringa " + variabile;
 

psicona

Nuovo Utente
10 Mar 2017
18
1
3
perdonami, ho scritto come un libro stracciato.
Volendo avere non solo il numero ma una stringa di testo più complessa (che contenga anche altri tag html) conviene separare il calcolo in un file .js e poi inviare il risultato come output, concatenando stringa + variabile.
Corretto?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Si, puoi anche evitare un file esterno, l'importante secondo me è separare il più possibile il codice javascript da quello html
HTML:
<button onclick="funzione();">clicca</button>
        <script>
            function funzione() {
                // codice
            }
        </script>
 

psicona

Nuovo Utente
10 Mar 2017
18
1
3
Ciao Criric,
provo a chiederti ulteriore aiuto.
Ho spostato il codice in un file .js separato (così magari sono libero di aggiungere le stringhe e altre personalizzazioni).
Come identifico, nel file .js, il controllo output al quale assegnare il valore della stringa?
Nell'esempio iniziale il controllo era questo:
Codice:
Area = <output name="risultato"></output>
se lascio semplicemente risultato.value ovviamente non funziona.
Anche se aggiungo l'id del forum areaRettamgolo.risultato.value non va.
Cosa sto sbagliando?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
puoi provare cosi
Codice:
document.forms[0].risultato.value =
oppure cosi
Codice:
document.getElementsByTagName("output")[0].value =
devi comunque seguire la struttura del documento
 
Discussioni simili
Autore Titolo Forum Risposte Data
A [Javascript] problemi con javascrip e posizione GPS html5 Javascript 6
G html5 ed audio gestito da javascript Javascript 2
MicheleWT [retribuito] Programmatore HTML5 Javascript Offerte e Richieste di Lavoro e/o Collaborazione 0
M Inviare un file su un server remoto con JavaScript Javascript 0
T a href="javascript:;" Javascript 0
F Creare elementi html con javascript Javascript 2
A pulsante di update campo mysql con javascript Javascript 2
8 Javascript - PDF Form Javascript 0
B javascript per problemi con pdf e Safari Javascript 0
N informazione javascript Programmazione 0
I Eecuzione di javascript in ciclo foreach php. PHP 7
P javascript:document.forms Javascript 7
S Consiglio esercizio Javascript Javascript 2
MarcoGrazia Aggiungere o rimuovere classi in javascript Javascript 1
P Passaggio id php a javascript PHP 6
E lettura da un Database con Javascript jQuery 2
V TRIS in javascript Javascript 1
IClaude Funzione Javascript Javascript 8
Alex_70 Javascript date color Javascript 3
F Convertire JavaScript per la compatibilità nei browser obsoleti Javascript 0
I Passare dei parametri in javascript PHP 0
Shyson Meglio Javascript o HTML? Javascript 4
M Chiamare pagina php da javascript Javascript 8
M Errore JavaScript per php [objeto HTMLParagraphElement] PHP 0
D Javascript per il download dei dati Javascript 0
grgfede Problema javascript con aruba Javascript 1
webmachine [PHP] [JAVASCRIPT] Form strano in HTML PHP PHP 1
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
I javascript come caricare una pagina sopra quella corrente in automatico Javascript 2
L [Javascript] Problema salvataggio dati in db Javascript 1
max1974 [Javascript] Grafico chartjs con dati da J.ajax Javascript 3
G Quiz Javascript Javascript 4
A [Javascript] Scrittura su più campi contemporaneamente Javascript 19
F classic asp popolare combo box javascript Presentati al Forum 1
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
F [Javascript] comando innerHTML non funziona Javascript 5
alexice51 proggrammi per scrivere in javascript? Javascript 3
max1974 [Javascript] Accordion aria-exspanded Javascript 0
D [Javascript] salvare immagine canvas - paypal Javascript 0
O [Javascript] Conflitto Jquery: forse... Javascript 0
M [Javascript] Canvas js css Javascript 1
M Programmazione web HTML, CSS e JavaScript Offerte e Richieste di Lavoro e/o Collaborazione 6
G [Javascript] Errore inserimento dati Backend Node.js e workbench Javascript 1
A Creare con Javascript un percorso all'interno di uno spazio Javascript 0
D [Javascript] inserire uno script in un file php Javascript 6
Monital [Javascript] inserire dati estratti dal db in html fisso Javascript 1
K [javascript] Tecnica per rilevare celle contenenti caratteri ricevute in dinamico Javascript 1
F [JavaScript] Ottenere il CSS dopo transform: scale() e transform-origin Javascript 0
S [Javascript] Problema costrutto if Javascript 0
I [Javascript] window.location.href porta alla nuova pagina e ritorna incomprensibilmente. Javascript 0

Discussioni simili