Newsgroup: it.comp.lang.javascript
Titolo: Scusate di nuovo radio+select

Non riesco proprio a fare questa cosa, ci ho provato e ho cercato nei
vecchi post però niente, complice anche la mia scarsa abilità col
javascript.
Ho un normalissimo radio button
<input type="radio" name="banca">
sull'Onclick di quest'ultimo non riesco a far apparire un benedetto menu
select che contiene un certo numero di valori.
Son 10gg che vado avanti e non ne esco, se qualcuno ha una dritta lo
ringrazio

 ringrazio
Posta il codice che hai scritto finora.
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
 ----> itALY = it <----


Ti mando una roba più semplice perchè i sorgenti li ho in ufficio
<html>
<head>
<script language="JavaScript">
function addOption(select, text1, value1,text2,value2) {
var newOpt1=document.createElement("OPTION");
     newOpt1.text=text1;
     newOpt1.value=value1;
     select.options.add(newOpt1);
var newOpt2=document.createElement("OPTION");
     newOpt2.text=text2;
     newOpt2.value=value2;
     select.options.add(newOpt2);
}
</script>
</head>
<body >
<?php
$sql=mysql_query("SELECT Contoc,Contoc2 FROM t_utente WHERE
IDUtente='{$gas_login[IDUtente]'} ");
$cc1=mysql_result($sql,0,'Contoc');
$cc2=mysql_result($sql,0,'Contoc2');
?>
<form name="main" method="POST" >
<input type="radio" name="cassa" >Cassa
<?php
print "<input type=\"radio\"  name=\"banca\"
onClick=\"addOption(document.main.contocorr, $cc1,".{
"cc1"}.{,$cc2,}.{"cc2"})\">"Banca;
?>
<select size="1" name="contocorr">
    <option selected>--- Scelta cc ---</option>
</select>
Questo è ciò che ho provato a fare ma non mi funziona perchè temo il
passaggio dei parametri nella funzione addOption.
Anche se questa è una non soluzione perchè io vorrei creare in html/php
il combo
<select size="1" name="contocorr">
    <option selected>--- Scelta cc ---</option>
<?php
$sql=mysql_query("SELECT Contoc,Contoc2 FROM t_utente WHERE
IDUtente='{$gas_login[IDUtente]'} ");
$cc1=mysql_result($sql,0,'Contoc');
$cc2=mysql_result($sql,0,'Contoc2');
print "<option>$cc1</option>";
print "<option>$cc2</option>";
?>
</select>
e poi farlo apparire solo quando c'è l'onClick sul radio Banca, ma
questo non lo so proprio fare, se mi dai un aiuto ti ringrazio

 Ti mando una roba più semplice perchè i sorgenti li ho in ufficio
Il codice PHP viene eseguito sul server PRIMA che la pagina sia inviata al 
browser.
Quindi e' impossibile eseguire il codice PHP al click, fra il click e il 
riempimento della select dev'esserci per forza il server di mezzo che spara i 
dati.
Dunque devi inviare il form e popolare (o ripopolare) la select in base al 
click.
Non ti invidio per il casino in cui ti sei cacciato, specie se davvero sei 
fermo da 10 giorni su una cosa come questa :-)


 fermo da 10 giorni su una cosa come questa :-)
Non mi invidio nemmeno io, se trovo una soluzione ti faccio sapere!
Senti ne approfitto per farti una domanda: io ho un certo numero di
checkbox in un form, però non so quanti sono perchè li sputo fuori
attraverso una query. C'è un modo di controllare che chi compila il form
me ne "checkki" almeno uno?

frame nascosto?
onClick carichi una pagina in un frame nascosto, che carica i dati; onload
esegue una function nella pagina principale passandogli come parametro
l'elenco delle option da aggiungere.
Un po' contorto ma funzionale, io lo ho usato varie volte con ottimi
risultati (attenzione a: 1) visualizzare una pagina tipo "attendere, prego",
altrimenti l'utente non capisce se sta succedendo qualcosa b) io prima di
chiamare la pagina nel frame nascosto setto un timeout di N secondi; se
entro N secondi la function che riceve l'elenco delle option viene chiamata
il timeout viene bloccato (clearTimeout), altrimenti visualizzo un msg di
errore e nascondo l'attendere prego.