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

    Controllo form che non controlla

    Buon giorno a tutti voi raga,
    Sto cercando di fare un controllo su un form composto da un campo text e una select popolata tramite db(asp).
    ecco il codice della function:

    function seleziona_tutti(ss){
    modulo=ss
    if(modulo.elements["Cerca"].value == "" || modulo.elements["Cerca"].value.length < 3){
    alert("Non hai inserito il tuo Nome.");
    modulo.elements["Cerca"].focus();
    return false;
    }
    if (ss[ss.categoria.selectedIndex].value==''){
    alert("attenzione, scegliere una categoria merceologica!")
    return false
    }
    }

    questo invece il form:

    <form method="POST" action="ricerca.asp" name="cerca" onsubmit="return seleziona_tutti(this);">
    <table border="0" width="407" cellspacing="0" cellpadding="0">
    <tr>
    <td width="159">Cerca:<input type="text" class="tras" name="cerca" size="15"></td>
    <td width="156">In:<select size="1" class="tras" name="categoria">
    <option selected >.: Categoria :.</option>
    <option value="catalogo">Nuovo</option>
    <option value="usato">Usato</option>
    </select></td>
    <td width="86" align="center"><input type="image" src="images/Cerca.gif" name="B1" value="Submit" width="64" height="24"></td>
    </tr>
    </table>
    </form>

    Non mi fà alcun controllo e non riesco a capire dove sbaglio. Ci date un occhiata per favore?
    grazie mille
    aaaaaaacccciià

  2. #2
    Reale_Augello
    Guest

    Secondo...

    ... me l'errore è qui:

    if (ss[ss.categoria.selectedIndex].value==''){

    Accedi male al valore del menu a tendina.
    Prova così:

    if (ss.categoria[ss.categoria.selectedIndex].value==''){

    E poi manca un return true; prima dell'ultima parentesi graffa.

    Ciao !

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2001
    Messaggi
    37
    Heilà, ciao Reale_Augello,
    Grazie mille per l'interessamento, ho risolto così:
    function validaform(){

    ff = document.form1
    if(ff.elements["cerca"].value == "" || ff.elements["cerca"].value.length < 3){
    alert("Non hai inserito alcuna chiave da ricercare. Ti ricordiamo che deve essere composta da almeno 3 lettere!");
    ff.elements["cerca"].focus();
    return false;
    }


    cm=document.form1.categoria.options
    if (cm[cm.selectedIndex].value==''){
    alert("Attenzione, non è stata selezionata la categoria in cui effettuare la ricerca!")
    return false
    }
    }
    in questo modo funziona (la funzione...... )
    anzi approfitto per postarla tante volte torna utile a qualcun'altro.

    Alcune volte bisogna fermarsi specie quando si è sotto stress, altrimenti si finisce per rompere le scatole senza alcun motivo valido......... grazie ancora comunque ciao
    aaaaaaacccciià

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.