Newsgroup: it.comp.lang.javascript
Titolo: Emergency!!!!!!!!!!!!!!!!!!!!!!!!

Ciao a tutti, vi volevo chiedere una cosa, sperando ovviamente che qualcuno
mi risponda: mi servirebbe sapere come si fa a definire in linguaggio
Javasript il value di un menù a discesa (es: quello dei prefissi dei numeri
dei cellulari)! So che le normali caselle di testo a riga singola si
indicano document.sms.number.value dove sms è il nome del form, mentre
number è il name della casella di testo a riga singola o input, vero?
L'aiuto ve lo chiedo per creare uno script del genere:
<script language="JavaScript"><!--
function pagina(){
  if (window.document.pag.number.selectedIndex == "giacomo1") {
document.smsForm.prefix.value="xxx"
document.smsForm.number.value="yyyyyyy"
  if (window.document.pag.number.selectedIndex == "giacomo2") {
document.smsForm.prefix.value="www"
document.smsForm.number.value="aaaaaaa"
}
// --></script>
Ma purtroppo questo script non è esatto poichè non è funzionante: lo script
mi serve per creare una pagina che mi faciliti l'invio di sms infatti
sciegliendo il nome della persona a cui voglio mandare l'sms la pagina
automaticamente mi inserisce al posto giusto il prefisso e il numero. Ma lo
script non è funziona, qualcuno mi può aiutare? by
--
           ZMASTER ## Albino
 
lib...@inwind.it
 - 
zma...@gsmbox.it
 - C6 liboni84
          6 millions ways to die choose one
=========================================================
Sito ufficiale:     
http://spazioweb.inwind.it/liboni84/homepage.htm
=========================================================

 Ma purtroppo questo script non è esatto poichè non è funzionante:
Direi il contrario: non è funzionante poiché non è esatto :-)
Questo funge, copia/incolla e ricomponi la var "aa" andata a capo:
<html>
<title></title>
<head>
<script language="javascript">
function Scegli_Pref(){
aa=document.smsForm.sel_pref.options[document.smsForm.sel_pref.selectedI
ndex].text;
 
if (document.smsForm.sel_pref.selectedIndex == 0) {
    document.smsForm.prefix.value=" ";
    document.smsForm.prefix.blur(); 
} else {
    document.smsForm.prefix.value=aa;
    document.smsForm.prefix.focus();
}}
</script>
</head>
<body>
<form name="smsForm">
<select name="sel_pref" onChange="Scegli_Pref();">
<option value="Seleziona il prefisso" selected>Seleziona il
prefisso</option>
<option value="335">335</option>
<option value="328">328</option>
<option value="339">339</option>
<option value="347">347</option>
<option value="349">349</option>
</select>
&nbsp;&nbsp;&nbsp;
<input type="text" name="prefix" value="">
</form>
</body>
</html>
-- 
mailto: y = i
----------------------------------------
Vivo nel terrore di non essere frainteso 
(Oscar Wilde)

 Ma purtroppo questo script non č esatto poichč non č funzionante:
Sbagli la lettura della <SELECT> list ("window" te lo puoi risparimare):
<script language="JavaScript">
<!--
function pagina(){
  if (document.pag.number.options
[document.pag.number.selectedIndex].value == "giacomo1") {
document.smsForm.prefix.value="xxx"
document.smsForm.number.value="yyyyyyy"
  if (document.pag.number.options
[document.pag.number.selectedIndex].value == "giacomo2") {
document.smsForm.prefix.value="www"
document.smsForm.number.value="aaaaaaa"
}
//-->
</script>
Prova cosě e vedrai che funzia!
-- 
Ciao, Riccardo
------------------------------------------------------------------------
WebMaster: ----> 
http://www.jsdir.com
 <---- (aka 
http://www.jspoint.it
)
              All the JavaScript you need
------------------------------------------------------------------------
               Nessun traguardo č abbastanza lontano.
------------------------------------------------------------------------

Grazie per l'aiuto a tutti e due ma non sono riuscito cmq nel mio
obbiettivo! Il quale era quello di creare un specie di agenda telefonica che
usufruiva di un menu a discesa e una volta scelto il nome dall'agenda si
visualizzava su input con name prefix il prefisso del cellulare della
persona scelta precedentemente, mentre sul'input chiamato number il numero
senza prefisso della persona da me scelta precedentemente:
la mia pagina si presenta cosě:
<html>
<body>
<script language="javascript">
function Nome(){
aa=document.smsForm.nome.options[document.smsForm.nome.selectedIndex].text;
if (aa = "Ale V. cell.") {
document.smsForm.prefix.value="xxx";
document.smsForm.number.value="wwwwwww";}
if (aa = "Angela") {
document.smsForm.prefix.value="yyy";
document.smsForm.number.value="ccccccc";}
if (aa = "Annalisa17") {
document.smsForm.prefix.value="zzz";
document.smsForm.number.value="ddddddd";
}}
</script>
<form name="smsForm">
    <p><select name="nome" size="1" onchange="Nome();">
        <option selected>Seleziona nome</option>
        <option>Ale V. cell.</option>
        <option>Angela</option>
        <option>Annalisa17</option>
    </select><input type="text" size="3" maxlength="3"
    name="prefix"><input type="text" size="7" maxlength="7"
    name="number"></p>
</form>
</body>
</html>
 -fine-
Non riesco a fare funzionare questa pagina poichč non č corretto lo script;
come vedrete una volta scelta la una delle tre persone dell'agenda
nell'input prefix compare zzz e nell'altro input ddddddd, anche se la
persona scelta č la prima dell'elenco: questo č l'errore; come faccio a
correggierlo! Aiutatemi!!!!!!!!! Ciao by
P.S. Risp!!!!!!!!!!!!!
--


 correggierlo! Aiutatemi!!!!!!!!! Ciao by
Con lo scriptino che ti do' non dovrai neanche aggiungere condizioni per
ogni nominativo aggiunto, ti bastera' "allungare" la lista dei tag
<option> rispettando il criterio impostato, ossia:
prefisso-spazio-numero dentro "value".
Oddìo, una condizione c'e', anzi due, anzi tre: 
- sistema data/ora del tuo PC, vai indietro di 4 giorni
- aggiusta il bug "R" di Outlook (la "R" spezza il thread, occorre "Re")
- dammi i *veri* numeri di Angela e Annalisa :-) 
<html>
<title></title>
<head>
<script language="javascript">
function Scegli(){
pref=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selecte
dIndex].value.substr(0,4);
nume=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selecte
dIndex].value.substr(4,7);
if (document.smsForm.sel_nome.selectedIndex == 0) {
    document.smsForm.prefix.value=" ";
    document.smsForm.number.value=" "; 
} else {
    document.smsForm.prefix.value=pref;
    document.smsForm.number.value=nume;
}}
</script>
</head>
<body>
<form name="smsForm">
<select name="sel_nome" onChange="Scegli();">
<option value="Seleziona il nome" selected>Seleziona il nome</option>
<option value="323 1231231">Ale V. cell.</option>
<option value="
325 4564564
">Angela</option>
<option value="327 7897897">Annalisa17</option>
</select>
&nbsp;&nbsp;&nbsp;
<input type="text" name="prefix" value="" size="5" maxlength="3">
&nbsp;&nbsp;&nbsp;
<input type="text" name="number" value="" size="10" maxlength="7">


 prefisso-spazio-numero.
E questo continua a valere, ma non avevo pensato ai prefissi di 2 o 4
cifre. Ho rimediato:
<html>
<title></title>
<head>
<script language="javascript">
function ValutaPrefis() {
document.smsForm.num_hid.value=document.smsForm.sel_nome.options[documen
t.smsForm.sel_nome.selectedIndex].value;
setTimeout("Scegli()",20);
}
function Scegli(){
pref_2=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selec
tedIndex].value.substr(0,2);
nume_2=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selec
tedIndex].value.substr(3,10);
pref_3=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selec
tedIndex].value.substr(0,3);
nume_3=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selec
tedIndex].value.substr(4,10);
pref_4=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selec
tedIndex].value.substr(0,4);
nume_4=document.smsForm.sel_nome.options[document.smsForm.sel_nome.selec
tedIndex].value.substr(5,10);
if (document.smsForm.sel_nome.selectedIndex == 0) {
    document.smsForm.prefix.value=" ";
    document.smsForm.number.value=" "; 
 
} else if
(document.smsForm.num_hid.value.substr(2,1) ==" ") {
    document.smsForm.prefix.value=pref_2;
    document.smsForm.number.value=nume_2;
 
} else if
(document.smsForm.num_hid.value.substr(3,1) ==" ") {
    document.smsForm.prefix.value=pref_3;
    document.smsForm.number.value=nume_3;
} else {
    document.smsForm.prefix.value=pref_4;
    document.smsForm.number.value=nume_4;
}}
</script>
</head>
<body>
<form name="smsForm">
<select name="sel_nome" onChange="ValutaPrefis();">
<option value="Seleziona il nome" selected>Seleziona il nome</option>
<option value="323 1231231">Ale V. cell.</option>
<option value="
325 4564564
">Angela</option>
<option value="327 7897897">Annalisa17</option>
<option value="0571 99999999">Tamara di Montecatini</option>
<option value="06 989898989">Amanda di Roma</option>
</select>
&nbsp;&nbsp;&nbsp;
<input type="text" name="prefix" value="" size="6" maxlength="4">
&nbsp;&nbsp;&nbsp;
<input type="text" name="number" value="" size="12" maxlength="10">
<input type="hidden" name="num_hid" value="">
