Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    jsp di controllo lunghezza campo

    ciao a tutti!non sono molto pratico di jsp ma comunque mi sono fatto una funzione che controlla se alcuni campi form di una pagina sono vuoti.
    posto il codice:

    codice:
    <script language="javascript">
    function control(fform) {
    	Ctrl = fform.nome;
    	if (Ctrl.value == "") {
    	validatePrompt (Ctrl, "Attenzione ! Inserire il proprio nome \nPlease, play attention ! Insert your name");
    	return false;
    	}
    	Ctrl = fform.cognome;
    	if (Ctrl.value == "" )  {
    	validatePrompt (Ctrl, "Attenzione ! Inserire il proprio cognome \nPlease, play attention ! Insert your surname");
    	return false;
    	}
    	Ctrl = fform.indirizzo;
    	if (Ctrl.value == "" )  {
    	validatePrompt (Ctrl, "Attenzione ! Inserire il proprio indirizzo \nPlease, play attention ! Insert your address");
    	return false;
    	}
    	Ctrl = fform.citta;
    	if (Ctrl.value == "" )  {
    	validatePrompt (Ctrl, "Attenzione ! Inserire la propria città \nPlease, play attention ! Insert the name of the town you live in");
    	return false;
    	}
    	Ctrl = fform.telefono;
    	if (Ctrl.value == "" )  {
    	validatePrompt (Ctrl, "Attenzione ! Inserisci il tuo numero di telefono \nPlease, fill in your telephone number");
    	return false;
    	}
    	if (isNaN(Ctrl.value))  {
        validatePrompt (Ctrl, "Attenzione ! Il campo 'telefono' supporta solo valori numerici \nPlease, only numbers are allowed");
    	return false;
    	}
    	Ctrl = fform.cellulare;
    	if (Ctrl.value == "" )  {
    	validatePrompt (Ctrl, "Attenzione ! Inserisci il tuo numero di cellulare \nPlease, fill in your telephone number");
    	return false;
    	}
    	if (isNaN(Ctrl.value))  {
        validatePrompt (Ctrl, "Attenzione ! Il campo 'cellulare' supporta solo valori numerici \nPlease, only numbers are allowed");
    	return false;
    	}
    	Ctrl = fform.email;
    	if (Ctrl.value == "" || Ctrl.value.indexOf ('@', 0) == -1 || Ctrl.value.indexOf('.') == -1 || (Ctrl.value.indexOf(' ') != -1))  {
        validatePrompt (Ctrl, "Attenzione ! Indirizzo e-mail non valido o assente \nPlease, play attention ! E-mail address incomplete or bad");
    	return false;
        } 
        Ctrl = fform.professione;
    	if (Ctrl.value == "" )  {
    	validatePrompt (Ctrl, "Attenzione ! Inserire la propria professione \nPlease, play attention ! Insert your job");
    	return false;
    	}
    }
    function validatePrompt (Ctrl, PromptStr) {
    	alert (PromptStr)
    	return false;
    }
    // -->
    </script>
    funziona a meraviglia ed è molto pratico.
    ora,oltre a controllare che il campo cellulare non sia vuoto,ho anche bisogno di controllarne la lunghezza.
    voglio che se il dato inserito è < 7 mi compaia un altro alert con l'indicazione appropriata.
    questo però,sinceramente,non ho idea di come poterlo fare.
    qualcuno può darmi una mano.

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    metti il value del campo in una variabile, poi applichi la funzione trim
    codice:
    function trim(stringa)
    { 
    	stringa = stringa + "";
    	return stringa.replace(/^ */,"").replace(/ *$/,""); 
    }
    poi controlli la proprietà length della stringa pulita dagli spazi iniziali e finali...
    Pietro

  3. #3
    no,calma,calma...ho detto che di jsp non so praticamente niente!
    e se quelo che hai scritto è già niente...beh,io sono più indietro ancora!mi limito a questo,qualche script per tornare indietro,per aprire le popup e per prendere data e ora.
    non ho capito:come faccio a prendere il value del campo?in ASP ce la farei a occhi chiusi,ma qui siamo su un altro territorio...
    scusa,mi sapresti spiegare un po' meglio lo script che mi hai passato?non vorrei applicarlo sbagliato...

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Devi fare uno sforzo per adattare lo scritto al tuo caso, il mio è solo un esempio
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    	<head>
    		<title>a</title>
    		<meta name="vs_defaultClientScript" content="JavaScript">
    		<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    		<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
    		<meta name="ProgId" content="VisualStudio.HTML">
    		<meta name="Originator" content="Microsoft Visual Studio .NET 7.1">
    	<script id="clientEventHandlersJS" language="javascript">
    <!--
    //-------------------------------------------------------------------
    // rimuove gli spazi iniziali e finali da strValore
    //-------------------------------------------------------------------
    function trim(stringa)
    { 
    	stringa = stringa + "";
    	return stringa.replace(/^ */,"").replace(/ *$/,""); 
    } 
    
    function form1_onsubmit() {
    	var v = document.getElementById("Text1");
    	if(!v) return false;
    	
    	if(trim(v.value).length < 7)
    	{
    		alert("Il campo Text1 non deve essere vuoto e deve essere almeno di 7 caratteri");
    		
    		return false;
    	}
    	else
    		return true;
    	
    }
    
    //-->
    </script>
    </head>
    	<body MS_POSITIONING="FlowLayout">
    		<form id="form1" name="form1" language="javascript" onsubmit="return form1_onsubmit()">
    			<INPUT type="text" ID="Text1" NAME="Text1">
    			<INPUT type="submit" value="Submit" ID="Submit1" NAME="Submit1">
    		</form>
    	</body>
    </html>
    Pietro

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    E che c'entra Java Server Pages?
    Stavo per spostare il thread, ma devo invece cambiare il titolo!
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    no,non ci siamo,io l'ho messo,l'ho adattato a ciò che mi serve ma anche se ci metto 1 carattere passa.
    io ho un dubbio:la riga che uso per andare al codice è questa:

    codice:
    <form method="POST" action="Add_adesione.asp" form onSubmit="return control(this);">
    dove però non menziono nessuna delle due nuove funzioni che ho messo...lo so che sono domande stupide,ma è che io proprio javascript.
    cos'è che mi da problemi?

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.