Test di valutazione per Valeria - Confronto variabile con array, scrivendo un nome qualsiasi su un campo di testo esso se risulta nell'array la finestra dell'alert ti dice presente altrimenti non presente

« Older   Newer »
  Share  
max_400
icon7  view post Posted on 17/4/2012, 00:13     +1   -1




Test di valutazione per Valeria - Confronto variabile con array
scrivendo un nome qualsiasi su un campo di testo esso se risulta nell'array la finestra dell'alert ti dice presente altrimenti non presente


Il seguente script è incompleto...ho tagliato alcune righe
saresti in grado di completarlo e renderlo funzionante?

:linea-rossa:
HTML
<script>
var mioarray=new Array('filippo','pasquale','luigi');
________________
________________


function confronta(){
var pippo= document.mioform.nome.value;
_______________
_______________
if( ______ ){
alert("presente");
}else{
alert('non presente');
}
}

</script>


var mioarray=new Array('filippo','pasquale','luigi');<br><br>

<form name="mioform">
<input type="text" name="nome">
<input type="button" onclick='confronta()' value='confronta'>
</form>

:linea-rossa:
Poi se conosci altri modi per confrontare una variabile con un array
puoi postare.

Er Founder :capt:
by Max_400

 
Top
max_400
view post Posted on 19/4/2012, 03:31     +1   -1




Completo io lo script.
Non posso lasciare una domanda senza risposta.

CODICE
<script>
var mioarray=new Array('filippo','pasquale','luigi');
var visualiz=[mioarray];
visualiz2=visualiz.toString();

function confronta(){
var pippo= document.mioform.nome.value;
pippo2=pippo.toString();
jjj=visualiz2.indexOf(pippo2);
if(jjj >=0){
alert("presente");
}else{
alert('non presente');
}
}
</script>

var mioarray=new Array('filippo','pasquale','luigi');<br><br>

<form name="mioform">
<input type="text" name="nome">
<input type="button" onclick='confronta()' value='confronta'>
</form>


ho trasformato sia l'array che la variabile in stringa cioè testo
http://max400.netne.net/confronta-variabile-con-array.html
------------------------------------------------------------------------

Questo è con il ciclo for e la variabile booleana (esempio consigliato)
la variabile booleana è necessaria per spezzare il ciclo for.

CODICE
<script>

function confronta(){
var mioarray = new Array("filippo","pasquale","luigi");
var pippo = document.mioform.nome.value;
var valido = false;
for(var i=0; i<mioarray.length; i++){
if(pippo==mioarray[i]) {
valido=true;
}
}
if(valido){
alert("presente")
}else{
alert("non in elenco")};
}
</script>

var mioarray=new Array('filippo','pasquale','luigi');<br><br>

<form name="mioform">
<input type="text" name="nome">
<input type="button" onclick='confronta()' value='confronta'>
</form>


http://max400.netne.net/confronto-array-max.html


Edited by max_400 - 19/4/2012, 04:53
 
Top
Vale2
view post Posted on 19/4/2012, 10:32     +1   -1




Ciao Max,

il primo esempio è errato. Da true se non scrivi nulla, e se inserisci una sola lettera dei valori degli array

se usi toString() e indexOff devi creare una condizione tipo:

CODICE
<script type="text/javascript">
var frutta = ["Banana", "Arancio", "Mela", "Mango"];
if(frutta.toString().indexOf("Arancio") > -1) {esiste = "Esiste"} else {esiste = "Non esiste"};
alert(esiste);
</script>


Il secondo è ok:


CODICE
<script type="text/javascript">
var mioarray = new Array("filippo","pasquale","luigi");
for (p in mioarray){
document.write("<font face='Verdana' size='2'>Indice Array "+p+" - Valore "+mioarray[p]+"</font><br />");}
function confronta(){
var pippo = document.mioform.nome.value;
var valido = false;
for(var i=0; i<mioarray.length; i++){
if(pippo==mioarray[i]) {
valido=true;}}
if(valido){
document.getElementById('risultato').innerHTML="<font face='Verdana' size='2'>Presente in Elenco "  +pippo+"</font>";
}else{
document.getElementById('risultato').innerHTML="<font face='Verdana' size='2'>Non in Elenco "  +pippo+"</font>";
}}
</script>


<form name="mioform">
<input type="text" name="nome">
<input type="button" onclick='confronta()' value='confronta'>
</form>
<div id="risultato"></div



http://vale2.brinkster.net/esempi/max_400/array.html


Valeria.

 
Top
max_400
view post Posted on 19/4/2012, 11:18     +1   -1




Esatto! Brava Valeria!

in particolare il indexOf("Arancio") > -1) è corretto!

per il secondo senza ombra di dubbio (tra l'altro è il mio preferito col ciclo for
ci sono più abituato lo uso anche in flash; l'indexOf non mi piace come comando.

Hai fatto bene ad usare innerHTML evitando quella fastidiosa finestra di alert
che a me fa venire il nervoso.

A dopo... un bacione :bacio:
ciao!
 
Top
3 replies since 17/4/2012, 00:13   82 views
  Share