giorno settimanamesegiorno

Sono passati 88 giorni dall'inizio dell'anno che corrispondono a 13 settimane

Arcobaleno, domani sereno



* Chattina

Aggiorna Storia
  • mar: :resistere:
    Febbraio 15, 2022, 19:44:48
  • mar: Non mi ricordavo di essere un global moderator wauuuu Ok Prof ti lascio restaurare in pace!
    Febbraio 15, 2022, 19:43:56
  • mar: :Cartelli70:
    Febbraio 15, 2022, 19:41:14
  • mar: ad cazzum pure qui?
    Febbraio 15, 2022, 19:41:02
  • mar: ciaoooo sono in perlistrazione
    Febbraio 15, 2022, 19:40:44
  • mar: :okkey:
    Febbraio 15, 2022, 19:40:20
  • Loretta/Nina: ciao a tutti
    Ottobre 04, 2021, 19:23:02
  • Loretta/Nina: :tuffarsi:
    Settembre 21, 2021, 07:08:03
  • Loretta/Nina: Buon autunno a tutti
    Settembre 21, 2021, 07:01:35
  • nuvolotta: avventure testuali
    Luglio 06, 2020, 23:26:08
  • _jan_: ...gli ultimo però....!!
    Gennaio 14, 2019, 14:45:09
  • _jan_: vedi gli ultimi post in fondo.
    Novembre 24, 2018, 19:10:00
  • mar: Trovato :Amm9:
    Novembre 24, 2018, 18:57:51
  • mar: Chi cerca trova non vi trovo! :Cartelli2:
    Novembre 24, 2018, 18:57:05
  • mar: Vado a vedere le cartoline!
    Novembre 24, 2018, 18:52:38
  • mar: :Amore145:
    Novembre 24, 2018, 18:52:21
  • mar: :Amore178:
    Novembre 24, 2018, 18:52:07
  • _jan_: Welcome Visitor.  :Party133:
    Novembre 15, 2018, 10:03:24
  • Loretta/Nina: Benvenuto ligi  :Cartelli37:
    Ottobre 09, 2018, 13:19:25
  • nuvolotta: Cucù...  :Amore20:
    Settembre 16, 2018, 01:16:47
  • Loretta/Nina: :Party133:
    Settembre 01, 2018, 17:05:30
  • _jan_: Ciao ai visitors!!
    Settembre 01, 2018, 17:02:31
  • Loretta/Nina: :fischio: :979:
    Agosto 28, 2018, 16:20:48
  • ketty: ah beh, meno male. ora il tempo e' un po' brutto
    Agosto 26, 2018, 13:27:36
  • _jan_: No, no, soqquà. Ci passo ma....... non c'è mai nessuno. Ammiro Nuvolotta, solitaria e presente.
    Agosto 25, 2018, 10:34:41
  • ketty: ma Jan è andato in vacanza? :Cartelli70:
    Agosto 24, 2018, 20:51:59
  • ketty: ciao a tutti.
    Agosto 24, 2018, 20:50:12
  • nuvolotta: :faccina_fiore: ciao ragazzioli/ole...
    Agosto 19, 2018, 23:03:49
  • Loretta/Nina: :ciao: :Party133:
    Agosto 19, 2018, 20:24:28
  • _jan_: :Felici13:
    Agosto 04, 2018, 15:30:40
  • nuvolotta: Ferie... già fatte....
    Agosto 04, 2018, 09:54:58
  • _jan_: Auguri di buon onomastico a tutti gli Alfonso....
    Agosto 01, 2018, 11:10:21
  • _jan_: chiusp per ferie?
    Luglio 30, 2018, 19:50:58
  • _jan_: Buon onomastico a Donatella Seconda........ e la prima? :Shok145:
    Luglio 30, 2018, 06:59:38
  • _jan_: Buon onomastico a tutte le Marta.  :Amore20:
    Luglio 29, 2018, 07:44:31
  • _jan_: Ci sono altre nuove iscritte viste il 26 luglio 2018..... (mica saranno monache)....  :approva:
    Luglio 26, 2018, 18:39:04
  • _jan_: Oggi, 26 luglio 2018, abbiamo una nuova iscritta "Francesca".....Benvenuta Francesca.  :Party133:
    Luglio 26, 2018, 15:49:24
  • _jan_: Buon onomastico anche a tutte le Anna!!! .....
    Luglio 26, 2018, 10:30:21
  • _jan_: Auguri di Buon Onomastico a TUO..... (ogni giorno, credo)..... :sm269:
    Luglio 26, 2018, 10:28:52
  • ketty: ma.... quando è il tuo?
    Luglio 25, 2018, 19:52:19

* Emoticon aggiuntive e link al portale


Autore Topic: invio dati da controllo select a controllo text  (Letto 3148 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline micdas

  • Administrator
  • Hero Member
  • *****
  • Post: 848
  • Sesso: Maschio
    • sito su Excel ed il suo vba
invio dati da controllo select a controllo text
« il: Maggio 22, 2009, 19:26:37 »
Mi trovo con questo problema, solo parzialmente risolto.
La mia necessità è quella di accodare in una casella di testo le varie voci scelte da una casella a discesa.
In un mormale form HTML ci sono riuscito, ma in un form dinamico creato con PHP non ci riesco perchè non riesco ad individuare la casella di testo.

La funzione JS è questa:
Codice: Non sei autorizzato a vedere i links. Registrati o Login
function JumpMenu(sel){
testo= document.pippo.accetta.value;
if(sel.selectedIndex!=0){
lnk=sel.options[sel.selectedIndex].value
if(lnk!=null){
document.pippo.accetta.value=testo + ", " + lnk;
}
else document.pippo.accetta.value="AAA";
}
else document.pippo.accetta.value="";
}

Questa funzione viene richiamata da un Form chiamato "pippo" in questo modo:
Codice: Non sei autorizzato a vedere i links. Registrati o Login
<select size="1" name="type" class="form" onChange="JumpMenu(this)" style="font-size: 8 pt; font-family: Verdana">
Come è visibile da Non sei autorizzato a vedere i links. Registrati o Login ci sono due semplice form:
uno in puro HTML ed uno uno in PHP.
Orbene quello HTML funziona, quello dinamico in PHP non riesco a farlo funzionare.

Immagino che alla funzione debba inviare anche il nome della casella di testo, essendo questa dinamica e quindi sempre con un nome diverso.
Questa casella di testo viene creata in questo modo:
Codice: Non sei autorizzato a vedere i links. Registrati o Login
$nome_casella = "casella_testo";
echo "<input name=\"".$nome_casella."\" type=\"text\" id=\"".$nome_casella."\" size=\"50\">\n";


Ringrazio chi potrebbe risolvere questo problema  :tanks:.

Miky  :vittoria:   :ciao:
E' stupido pensare di non aver bisogno degli altri

Offline HellDevil

  • Global Moderator
  • Full Member
  • ***
  • Post: 106
  • Sesso: Maschio
Re: invio dati da controllo select a controllo text
« Risposta #1 il: Maggio 22, 2009, 22:18:53 »
Ciao micdas,
penso che devi sostituire tutti i nomi campi fissi con un getelementbyid, e mettere un parametro id nella select con lo stesso contenuto del parametro name, più o meno deve venire così:

PHP
Codice: Non sei autorizzato a vedere i links. Registrati o Login
$nome_casella = "casella_testo";
echo "<form name=\"pluto\" method=\"post\" action=\"\">\n";
echo "<select size=\"1\" id=\"".$nome_casella."\" name=\"".$nome_casella."\" onChange=\"scrivi(this,$nome_casella)\">\n";
echo "<option selected>- SCEGLI -</option>\n";
echo "<option value=\"Marco\">Marco</option>\n";
echo "<option value=\"Giacomo\">Giacomo</option>\n";
echo "<option value=\"Giovacchino\">Giovacchino</option>\n";
echo "</select>\n";
echo "<input name=\"".$nome_casella."\" type=\"text\" id=\"".$nome_casella."\" size=\"50\">\n";
echo "</form>\n";

JS
Codice: Non sei autorizzato a vedere i links. Registrati o Login
function scrivi(sel,casella){
testo= document.getElementById(casella).value;
if(sel.selectedIndex!=0){
    lnk=sel.options[sel.selectedIndex].value
    if(lnk!=null){
        document.getElementById(casella).value=testo + ", " + lnk;
    }
    else document.getElementById(casella).value="AAA";
    }
else document.getElementById(casella).value="";
}

oppure puoi usare il comando document.getElementsByName
che però ti restituisce un array di risultati quindi la tua funzione dovrebbe diventare:

PHP
Codice: Non sei autorizzato a vedere i links. Registrati o Login
$nome_casella = "casella_testo";
echo "<form name=\"pluto\" method=\"post\" action=\"\">\n";
echo "<select size=\"1\" name=\"".$nome_casella."\" onChange=\"scrivi(this,$nome_casella)\">\n";
echo "<option selected>- SCEGLI -</option>\n";
echo "<option value=\"Marco\">Marco</option>\n";
echo "<option value=\"Giacomo\">Giacomo</option>\n";
echo "<option value=\"Giovacchino\">Giovacchino</option>\n";
echo "</select>\n";
echo "<input name=\"".$nome_casella."\" type=\"text\" id=\"".$nome_casella."\" size=\"50\">\n";
echo "</form>\n";

JS
Codice: Non sei autorizzato a vedere i links. Registrati o Login
function scrivi(sel,casella){
cas=document.getElementsByName(casella);
testo= cas[0].value;
if(sel.selectedIndex!=0){
    lnk=sel.options[sel.selectedIndex].value
    if(lnk!=null){
        cas[0].value=testo + ", " + lnk;
    }
    else cas[0].value="AAA";
    }
else cas[0].value="";
}

Diciamo che come soluzione nel tuo caso è più veloce la seconda (getElementsByName) ma sarebbe più corretto usare invece la prima soluzione (getElementById) in quanto il parametro id in una pagina html deve essere univoco, mentre il parametro name no.
Inoltre la prima soluzione ha un pò di problemi con internet explorer che, nonostante la funzione sia da standard W3C non è sempre supportata da IE.

Fammi sapere se risolvi così.  :okkey:
« Ultima modifica: Maggio 22, 2009, 22:21:36 da HellDevil »
Tutti sanno che una cosa é impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa

Offline micdas

  • Administrator
  • Hero Member
  • *****
  • Post: 848
  • Sesso: Maschio
    • sito su Excel ed il suo vba
Re: invio dati da controllo select a controllo text
« Risposta #2 il: Maggio 23, 2009, 13:48:36 »
Ciao HellDevil  :ciao:
Sono stato lieto di leggere la tua risposta e, prima di rispondere, l'ho testata nella mia pagina che puoiNon sei autorizzato a vedere i links. Registrati o Login
Purtroppo, come vedi testando la pagina e leggendo il codice in essa geneerata, non funge. A questo punto non so che fare perchè, se questo script non funziona, sarà difficile andare avanti nel mio lavoro
La cosa continua a funzionare solo nel primo form (quello HTML)   :pensare:  :pianto:
E' stupido pensare di non aver bisogno degli altri

Offline HellDevil

  • Global Moderator
  • Full Member
  • ***
  • Post: 106
  • Sesso: Maschio
Re: invio dati da controllo select a controllo text
« Risposta #3 il: Maggio 23, 2009, 14:22:21 »
Non sei autorizzato a vedere i links. Registrati o Login
Ciao HellDevil  :ciao:
Sono stato lieto di leggere la tua risposta e, prima di rispondere, l'ho testata nella mia pagina che puoiNon sei autorizzato a vedere i links. Registrati o Login
Purtroppo, come vedi testando la pagina e leggendo il codice in essa geneerata, non funge. A questo punto non so che fare perchè, se questo script non funziona, sarà difficile andare avanti nel mio lavoro
La cosa continua a funzionare solo nel primo form (quello HTML)   :pensare:  :pianto:


Trovato l'arcano  :Amm9:
il problema è come passi le variabili alla function sull'onchange, devi mettere il nome della textbox tra apici. Praticamente le chiamate delle function diventano:
nella prima function
<select size="1" id="Scelta1" name="Scelta1" onChange="scrivi_1(this,'casella_testo')">
nella seconda function invece
<select size="1" name="Scelta2" onChange="scrivi_2(this,'il_testo')">

Fammi sapere se risolvi  :vittoria:
Tutti sanno che una cosa é impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa

Offline micdas

  • Administrator
  • Hero Member
  • *****
  • Post: 848
  • Sesso: Maschio
    • sito su Excel ed il suo vba
Re: invio dati da controllo select a controllo text
« Risposta #4 il: Maggio 23, 2009, 21:25:43 »
Perfetto HellDevil  :okkey:
Il mio guaio era che, se il codice HTML generato deve essere
onChange="scrivi_1(this,'casella_testo')

Per fare questo il codice PHP l'ho modificato da
onChange=\"scrivi_1(this,".$nome_casella.")\"
a così:
onChange=\"scrivi_1(this,'".$nome_casella."')\"
aggiungendo l'apice semplice ( ' ) nella stringa.

Ti ringrazio HellDevil. Così, come vedi Non sei autorizzato a vedere i links. Registrati o Login, mi hai fatto risolvere il problema ottenendo anche nei due form PHP lo stesso risultato che ottengo col primo form HTML

 :tanks:   :vittoria:   :okkey:
E' stupido pensare di non aver bisogno degli altri