Visualizzazione dei risultati da 1 a 4 su 4

Discussione: textarea.value

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892

    textarea.value

    Salve a tutti.

    Io ho un array che contiene un oggetto. Vorrei applicare all'attributo value di una textarea il valore completo di tutti gli indici dell'array.

    Ma lui mi stampa soltanto L'ULTIMO...

    Ecco il codice:
    codice:
    this.stampavendite=function(){
    for(i=0;i<this.venduti.length;i++){
    miatextarea.value=this.venduti[i].nome+this.venduti[i].costo+this.venduti[i].numero;
    }
    }
    Così, invece, va bene e stampa tutto:

    codice:
    this.stampavendite=function(){
    for(i=0;i<this.venduti.length;i++){
    document.write(this.venduti[i].nome+this.venduti[i].costo+this.venduti[i].numero);
    }
    }
    Perché con il document.write sì e con la textarea.value no?


  2. #2
    Perché il value della textarea viene sovrascritto in continuazione fino a che non arrivi all'ultimo valore (che quindi sostituisce i precedenti). document.write() invece "scrive" nel documento il codice che tu gli dici di scrivere, finché lo script non termina.

    In pratica, il tuo codice non fa che impostare il valore della textarea più volte, sovrascrivendo sempre il valore impostato precedentemente.
    Per risolvere il problema devi "concatenare" il valore attuale della textarea con il valore che viene "aggiunto" di volta in volta dentro di essa:

    codice:
    this.stampavendite = function() {
    for (i=0; i<this.venduti.length; i++) {
    miatextarea.value += this.venduti[i].nome + this.venduti[i].costo + this.venduti[i].numero;
    }
    }
    Nota la sintassi "miatextarea.value +=". Questa sintassi in pratica, legge il valore presente nella textarea in un dato momento e gli "accoda" un nuovo valore. E' l'equivalente di:

    codice:
    miatextarea.value = miatextarea.value + NUOVOVALORE

  3. #3
    codice:
    miatextarea.value+=' ' +this.venduti[i].nome + ...
    ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    892
    Che idiota...

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.