Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2018
    Messaggi
    211

    casella di testo non legge

    In questo programma, se si clicca il pulsante "viaggia" e al prompt si danno i Km, la casella di testo di id="operazione" legge i calcoli con il parametro Km, mentre le due caselle di testo di id="KmPercorsi" e id="KmParziali", stranamente, non leggono neanche il solo valore dello stesso parametro Km, pur non bloccando il programma. Desidererei trovare una spiegazione. Grazie
    lanvoel

    codice:
    <HTML>
    <HEAD>
    <TITLE>Esempio133</TITLE>
    </HEAD>
    <BODY BGCOLOR="blanchedalmond">
    <H3>definizione di metodi</H3><HR>
    Serbatoio: <INPUT TYPE="text" NAME="operazione" id="operazione" SIZE="20" VALUE="5 Litri"><br>
    Km percorsi: <input type="text" id="KmPercorsi" name="KmPercorsi" size="30"><br>
    Km parziali: <input type="text" id="KmParziali" name="KmParziali"size="30">
    <BR>
    <SCRIPT TYPE="text/javascript">
    function Automobile(marca,modello,colore,cilindrata)
    {
      this.marca=marca;
      this.modello=modello;
      this.colore=colore;
      this.cilindrata=cilindrata;
      this.trazione; 
      //serbatoio viene inizializzato
      this.carburante=5.0;
      this.rifornimento = function (litri) 
      {
        //controllo che non trabocchi
        if(this.carburante+(litri*1)>=50) this.carburante=50;
        else this.carburante+=(litri*1);
        operazione.value=this.carburante+" Litri";
      }
      this.pieno = function ()
      {
        this.carburante = 50;
        operazione.value=50+" Litri";
      }
      this.viaggia = function(km)
      {
        //consuma 10 km con un litro
        //se minore di zero il metodo restituisce false
        if (this.carburante-(km/10)>=0) this.carburante-= km/10;
        else this.carburante=0;
        operazione.value=this.carburante+" Litri";
        KmParziali.value= Km*1
        KmPercorsi.value=KmPercorsi.value+ Km*1;
      }
    }
    //istanza di un oggetto punto
    var punto = new Automobile("Fiat","Punto","rosso",1200);
    </SCRIPT>
    <INPUT TYPE="button" VALUE="Fai il pieno" onclick="punto.pieno()">
    <INPUT TYPE="button" VALUE="  Viaggia   " onclick="punto.viaggia(prompt('Km percorsi',''))">
    <INPUT TYPE="button" VALUE=" Rifornisci " onclick="punto.rifornimento(prompt('litri?',''))"><br><br>
    </BODY>
    </HTML>

  2. #2
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    Per accedere ad un elemento HTML cm un INPUT devi usare getElementById e poi richiamre i metodi o le proprietà.
    Per gli Spartani e Sparta usa spartan Il mio github

  3. #3
    Le variabili javascript sono case-sensitive.
    Il parametro del metodo viaggia viene definito in minuscolo ma all'interno del metodo ti riferisci ad esso alternando kappa maiuscola e minuscola.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2018
    Messaggi
    211
    Grazie lucavizzi!
    "Stranamente" mi sono comportato io (confondendo Km e km) e non il programma!
    Ringrazio anche linoma per avermi risposto.
    Un saluto

  5. #5
    Prego.
    Quando le cose non vanno come ti aspetti, dovresti dare un'occhiata alla console del browser.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.