Visualizzazione dei risultati da 1 a 9 su 9

Discussione: innerHTML

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    78

    innerHTML

    ciao a tutti,

    io devo sommare due dati che trovo in due parti di un documento HTML. Il problema è che se uso il metodo innerHTML per recuperare il dati quando uso l'operatore "+" per fare la somma lui logicamente invece che sommare i due numeri mi concatena la stringa HTML.

    Qualcuno sa darmi qualche consiglio sul come risolvere il problema?

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Devi "parsare" il dato (con parseFloat ad esempio, si tenta la trasformazione di una stringa rappresentate un numero in un float -dato numerico- vero e proprio)
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    78
    Ok, ho provato a parsare la stringa con parseInt ma il risultato è Nan, forse xchè la stringa contiene qualche tag HTML?

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Già, può essere. parseInt prende proprio un valore intero. Strippa tutto il contenuto in tag. Puoi anche postare quel che ottieni da innerHTML così si capisce meglio dove risiede il dato da prendere
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    78
    allora io ho per esempio questo codice

    Codice PHP:
    <div id="costo">5</div
    e voglio ricavare il 5 perchè devo sommarlo ad altri dati. allora faccio:

    Codice PHP:
    parseInt(document.getElementById('costo').innerHTML); 
    ma il risultato come detto è Nan...

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    cosa ottieni con:

    codice:
    alert(document.getElementById("costo").innerHTML);
    ?
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    78
    uhm interessante.... ottengo:

    Codice PHP:
    <font color="..." size="..." ...>5</font

    ecco xchè mi dà Nan... qualche idea su come tirare fuori il 5?

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Bhè... per farla rapida...

    codice:
    var i = parseInt((document.getElementById("costo").getElementsByTagName("font")[0]).innerHTML);
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    78
    oookay, non sarà una soluzione stilisticamente perfetta ma funziona!

    Grazie mille!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.