Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    116

    Incrementare valore textbox da un button

    Ciao ragazzi, vorrei incrementare/decrementare il valore di un textbox per mezzo di un click su un button associato. Il button richiama una funzione a cui passa il nome del campo testo da incrementare. La funzione non va, mi dice necessario oggetto...
    Come posso risolvere...???
    Il codice del form è questo:
    Codice PHP:
    <form name="frmModulo">
    <
    tr>
        <
    td>A</td>
        <
    td><input type="text" name="SQL_Cella_1_1" value="10" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_1_2" value="20" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_1_3" value="12" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_1_4" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_1_4')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_1_4')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_1_5" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_1_5')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_1_5')" value=" - " /></td>
    </
    tr>
    <
    tr>
        <
    td>B</td>
        <
    td><input type="text" name="SQL_Cella_2_1" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_2_1')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_2_1')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_2_2" value="23" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_2_3" value="26" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_2_4" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_2_4')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_2_4')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_2_5" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_2_5')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_2_5')" value=" - " /></td>
    </
    tr>
    <
    tr>
        <
    td>C</td>
        <
    td><input type="text" name="SQL_Cella_3_1" value="30" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_3_2" value="18" size="1" /></td>
        <
    td><input type="text" name="SQL_Cella_3_3" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_3_3')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_3_3')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_3_4" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_3_4')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_3_4')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_3_5" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_3_5')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_3_5')" value=" - " /></td>
    </
    tr>
    <
    tr>
        <
    td>D</td>
        <
    td><input type="text" name="SQL_Cella_4_1" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_4_1')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_4_1')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_4_2" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_4_2')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_4_2')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_4_3" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_4_3')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_4_3')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_4_4" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_4_4')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_4_4')" value=" - " /></td>
        <
    td><input type="text" name="SQL_Cella_4_5" value="0" size="1" /> - <input type="button" onClick="Incrementa('SQL_Cella_4_5')" value=" + " /> | <input type="button" onClick="Decrementa('SQL_Cella_4_5')" value=" - " /></td>
    </
    tr>
    </
    form

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    116
    Nessuno puo' aiutarmi...

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    116
    La funzione riceve in argomento il nome del campo, ma lo script non lo riconosce. Dove sbaglio???
    Codice PHP:
    <script language="javascript" type="text/javascript">
    function 
    Incrementa(valore){
        
    nuovoValore document.frmModulo. + valore + .value 50;
        
    alert(nuovoValore );
        return 
    false;
    }
    </script> 

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Stai inventando una nuova sintassi?

    nuovoValore = document.frmModulo[valore].value = 50;

    Sempreche' tu sappia cosa stai facendo... ovvero assegnando il valore fisso 50 al campo del form e alla variabile...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    116
    ma...una risp un po' così mod
    Sì, so che sto facendo ma l'assegnazione del valore 50 al campo è solo una prova, li andrebbe l'incremento del valore letto.
    La dinamica dello script è semplice, leggo il valore del campo testo, lo incremento di 1 e lo aggiorno. La funzione postata effettivamente non è chiara, anzi, ma il mio prob era proprio la sintassi.
    Cmq ho risolto utilizzando DOM. Magari nel pomeriggio posto la mia soluzione. Ma vorrei capire perchè una sintassi del genere e scorretta:

    document.NomedelModulo.+parametroInfunzione+.value = AltroValore;

    con parametroInfunzione = al nome del campo testo nel mio modulo.

    Spero di esser stato chiaro e che tu mi risponda...grazie...

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da stonati
    Ma vorrei capire perchè una sintassi del genere e scorretta:

    document.NomedelModulo.+parametroInfunzione+.value = AltroValore;
    Che tipo di operazione dovrebbe essere? una concatenazione di stringhe? no, perche' document.NomedelModulo. o .value non sono nomi validi di variabile.

    Una somma di oggetti? no, perche' parametroInfunzione e' una stringa (se poi la somma di oggetti avesse senso).

    Tu vorresti ottenere un riferimento all'oggetto, per fare questo la sintassi corretta (fra le possibili quella che piu' si avvicina ai tuoi intenti) e' quella postata.

    Al limite si potrebbe "complicare" cosi':
    eval("document.NomedelModulo."+parametroInfunzione +".value = AltroValore;")

    ma non mi sembra il caso

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    116
    Quindi questa:
    document.frmModulo[valore].value

    ci provero'...

    Come dicevo io ho risolto utilizzado DOM:
    Codice PHP:
    function Incrementa(valore){
        if(
    document.getElementById) {
        
    riferimento document.getElementById(valore);
        
    nuovoValore = ++riferimento.value;
        
    riferimento.style.color '#FF0000';
        }
        return 
    false;

    Proverò anche con la sintattsi da te postata.
    grazie sei molto gentile...

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.