Visualizzazione dei risultati da 1 a 7 su 7

Discussione: object variabile

  1. #1

    object variabile

    Salve a tutti,
    Come poso creare un oggetto con un nome variabile?

    In pratica vorrei compilare delle textarea con delle funzioni richiamate da dei bottoni.
    ad esempio ho un bottone "grassetto"
    <input onclick="grassetto()" type="button" name="Submit2" value=" B " title="Grassetto">

    che se clikko avvia la funzione grassetto()
    function grassetto() {
    var frase;
    frase = prompt("Inserire la frase da mettere in grassetto","");
    document.form1.corpo1.value+=""+frase+"";
    document.form1.corpo1.focus();
    }

    e mi compila la textarea che si chiama corpo1..... (mette i tag + la frase che inserisco in un prompt che compare + il tag )

    Fino a qui funziona tutto bene, il problema sta' nel fatto che ho una decina di bottoni, per una decina di textarea, che fa un centinaio di funzioni da scrivere!!!!!

    allora ho pensato di creare una decina di funzioni che tramite passaggi di variabili mi gestiscono tutti i textarea... ma non mi funziona!!!!!!
    esattamente ho scritto:

    il bottone... (che voglio che compili il textarea di nome "corpo1)
    <input onclick="grassetto(corpo1)" type="button" name="Submit2" value=" B " title="Grassetto">

    la funzione
    function grassetto(corpo) {
    var frase;
    frase = prompt("Inserire la frase da mettere in grassetto","");
    document.form1.corpo.value+=""+frase+"";
    document.form1.corpo.focus();
    }

    la variabile corpo in questo caso assume il valore di "corpo1" ma... lo script non funziona.. mi da errore..
    mi dice:
    document.form1.corpo è nullo o non e' un oggetto....

    come poso creare un oggetto con un nome variabile?
    ho provato in vari modi, con parentesi quadre ecc...

    qualcuno mi puo' dare un consiglio ?
    grazie !!!!

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    puoi far riferimento ai singoli campi del form con elements['nome_campo']
    nell' esempio
    function grassetto(corpo) {
    var frase = prompt("Inserire la frase da mettere in grassetto","");
    document.form1.elements[corpo].value+=""+frase+"";
    document.form1.elements[corpo].focus();
    }
    ...
    <input onclick="grassetto('corpo1')" type="button" name="Submit2" value=" B " title="Grassetto">
    ciauz

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    chiaramente se si chiamano corpo1, corpo2, corpon puoi concatenare,
    x es.
    function grassetto(indice) {
    var frase = prompt("Inserire la frase da mettere in grassetto","");
    document.form1.elements['corpo'+indice].value+=""+frase+"";
    document.form1.elements['corpo'+indice].focus();
    }
    ...
    <input onclick="grassetto(1)" type="button" name="Submit2" value=" B " title="Grassetto">

  4. #4
    :bubu:
    Grazie 1000 e' perfetto !!!!
    Purtroppo non sono molto pratico di javascript anche se sono molto utili... non avrei saputo usare ..elements[..]

    C'e' in rete una buona guida per imparare, mi sa che mi tocca

    Ciao!!!!

  5. #5
    scusate era una domanda...

    C'e' una buona guida in internet per imparare?
    grazie!

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    ti consiglio intanto il corso di javascript per esempi
    (molto scorrevole e comprensibile) e gli articoli di pro.html.it,
    gli articoli e gli script di www.jsdir.com

    x il resto è necessario un buon reference
    (quelli + usati:
    www.devguru.com
    www.msdn.com/library
    guida e reference netscape a javascript1.5 o 1.3, scaricabili da qui
    )
    e chiaramente tanta pratica

  7. #7

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.