[Javascript] verifica input

WebDr

Nuovo Utente
20 Mar 2017
17
4
3
65
Padova
Ho creato una funzione per verificare che gli input obbligatori siano effettivamente riempiti, ma non succede nulla o meglio il tutto passa direttamente a registrazione.asp. Non mi sembra proprio che il codice presenti degli errori, il debug non ne cita, allora ho pensato che sia un problema di chiamata, ma cos'ha il codice seguente che non va?

<FORM ID="MyForm" name="MyForm" METHOD=POST onsubmit="return verifica(this)" ACTION="registrazione.asp"> ....

E la function inserita nell' <head>

function verifica(form){
var cognome = form.cognome.value;
var nome = form.nome.value;
var indirizzo=form.indirizzo.value;
var nvia=indirizzo[indirizzo.length-1];

if ((cognome == "") || (cognome == "undefined")) {
alert("Il campo Cognome è obbligatorio.");
form.cognome.focus();
return false;
}

else if ((nome == "") || (nome == "undefined")) {
alert("Il campo Nome è obbligatorio.");
form.nome.focus();
return false;
} ....ecc.

Dove sbaglio?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
A me funziona
HTML:
<FORM ID="MyForm" name="MyForm" METHOD=POST onsubmit="return verifica(this)"  ACTION="registrazione.asp">
    <input type="text" name="cognome"/>
    <input type="submit" value="submit"/>
</FORM>
<script>
    function verifica(form) {

        var cognome = form.cognome.value;

        if ((cognome == "") || (cognome == "undefined")) {
            alert("Il campo Cognome è obbligatorio.");
            form.cognome.focus();
            return false;
        }
    }
</script>
forse è la parte di codice che non hai postato ch enon va.
Usa i tag per racchiudere il codice
 

WebDr

Nuovo Utente
20 Mar 2017
17
4
3
65
Padova
A me funziona
forse è la parte di codice che non hai postato ch enon va.
Usa i tag per racchiudere il codice

Mah... o oggi sono particolarmente distratto...non cavo un ragno dal buco. Nemmeno Notepad++ mi aiuta.
Lo posto tutto, anche con i CSS :)
Gli puoi dare un'occhiata?
HTML:
<!--#include file="ProIniFile.asp"-->
<HTML>
<HEAD>
<TITLE>Registra operatore</TITLE>

<script type="text/javascript">

function verifica(form){

var cognome = form.cognome.value;
var nome = form.nome.value;
var indirizzo=form.indirizzo.value;
var nvia=indirizzo[indirizzo.length-1];
var citta=form.citta.value;
var provincia=form.provincia.value;
var associazione=form.associazione.value;
var email=form.email.value;
var login=form.lalogin.value;
var password=form.lapassword.value;
var colr;

if ((cognome == "") || (cognome == "undefined")) {
alert("Il campo Cognome è obbligatorio.");
form.cognome.focus();
return false;
}

else if ((nome == "") || (nome == "undefined")) {
alert("Il campo Nome è obbligatorio.");
form.nome.focus();
return false;
}

else if ((indirizzo == "") || (indirizzo == "undefined")) {
alert("Il campo Indirizzo è obbligatorio.");
form.indirizzo.focus();
return false;
}

else if (indirizzo.indexOf('n°')>-1){
alert("Inserire solo il numero senza 'n°' per indicare il civico della via");
form.indirizzo.focus();
return false;
}

else if (isNaN(nvia)) {
alert("Manca il numero civico.");
form.indirizzo.focus();
return false;
}

else if ((citta == "") || (citta == "undefined")) {
alert("Il campo Citta' è obbligatorio.");
form.citta.focus();
return false;
}
else if ((provincia == "") || (provincia == "undefined")) {
alert("Il campo Provincia è obbligatorio.");
form.provincia.focus();
return false;
}

else if ((associazione == "") || (associazione == "undefined")) {
alert("Il campo Associazione è obbligatorio.");
form.associazione.focus();
return false;
}

else if ((email == "") || (email == "undefined")) {
alert("Il campo Email è obbligatorio.");
form.email.focus();
return false;
}
else if ((login == "") || (login == "undefined")) {
alert("Il campo Login è obbligatorio.");
form.lalogin.focus();
return false;
}
else if ((password == "") || (password == "undefined")) {
alert("Il campo Password è obbligatorio.");
form.lapassword.focus();
return false;
}

}
</script>


<style type="text/css">
body {
background: #e0e0e0; /* For browsers that do not support gradients */
background: -webkit-linear-gradient(#e0e0e0, #FFFFFF); /* For Safari 5.1 to 6.0 */
background: -o-linear-gradient(#e0e0e0, #FFFFFF); /* For Opera 11.1 to 12.0 */
background: -moz-linear-gradient(#e0e0e0, #FFFFFF); /* For Firefox 3.6 to 15 */
background: linear-gradient(#e0e0e0, #FFFFFF); /* Standard syntax */
}

#aream{
position: absolute;
top: 50%;
left: 50%;
margin-top: -350px;
margin-left: -300px;
background-color:#FFFFFF;
border-style:solid;
border-color:#B70408;
box-shadow: 10px 10px 5px #888888;
border-width: thin;
}
input.largo {
width: 105px;
height: 28px;
}
</style>
</HEAD>
<body text="#000000" link="#0000EE" vlink="#551A8B" alink="#FF0000">
<%
dim strCode
strCode="lapassword"
dim intVolta
intVolta="0"
dim pos
dim cognome,nome,indirizzo,citta,provincia,associazione,email,loggin,password,admin
dim FN
FN=Server.MapPath("food.ini")

cognome=request.form("cognome")
nome=request.form("nome")
indirizzo=request.form("indirizzo")
citta=request.form("citta")
provincia=request.form("provincia")
associazione=request.form("associazione")
email=request.form("email")
loggin=request.form("laloggin")
password=request.form("lapassword")
'admin=request.form("admin")

IF len(cognome)>0 Then
codn=GetINIString(CodMaker, "numera", Default, FN) ' preleva il progressivo per la creazione del codice
codn=codn+1 ' lo aumenta di uno
codice="FS"& codn &"F" 'definisce la composizione del codice
Call Registra()
END IF

SUB Registra()
Set Conn=Server.CreateObject("ADODB.Connection")
strConn="driver={Microsoft Access Driver (*.mdb)}; "
strConn=strConn & " DBQ=" & Server.MapPath("mdb-database/operatori.mdb")
strConn=strConn & ";pwd=" & strCode
Conn.Open strConn
sql = "SELECT * FROM operatori WHERE LOGGIN='" & loggin & "'"
Set rs = Server.CreateObject("ADODB.Recordset")
'--qui il controllo della pre-esistenza loggin e password
rs.Open sql, conn ,3,3
if rs.RecordCount > 0 then
response.write("<script language=""javascript"">alert('La login '" + loggin + "' risulta già presente.');</script>")
cognome=""
rs.Close
Conn.Close
exit sub
end if
rs.Close
Conn.Close
Conn.Open strConn
sql = "SELECT * FROM operatori WHERE LOGGIN='" & password & "'"
rs.Open sql, conn ,3,3
if rs.RecordCount > 0 then
response.write("<script language=""javascript"">alert('La password '" + password + "' risulta già presente.');</script>")
cognome=""
rs.Close
Conn.Close
exit sub
end if
rs.Close
Conn.Close
'---
Conn.Open strConn
'se non esistente aggiungere:
sql = "SELECT * FROM operatori"
rs.Open sql, conn ,3,3
rs.addnew

rs("COGNOME")=cognome
rs("NOME")=nome
rs("INDIRIZZO")=indirizzo
rs("CITTA")=citta
rs("PROVINCIA")=provincia
rs("ASSOCIAZIONE")=associazione
rs("EMAIL")=email
rs("LOGGIN")=loggin
rs("PASSWORD")=password
rs("CODICE")=codice 'il codice non dovrà essere visibile nella pagina di modifica dell'account
'rs("ADMIN")=admin

rs.update
rs.Close

set rs = Nothing
conn.Close
set conn = Nothing

END SUB

%>
<DIV id="aream" STYLE="z-index:0; height:530px; width:600px;">
<div STYLE="position: absolute; top:20px; left:440px;">
<img SRC="immagini/nuovoutente.jpg" height="111" width="113">
</div>
<div STYLE="position: absolute; top:0px; left:235px;">
<br><b><font color="blue"><font size=+3>Firstfood</font></font></b>
</div>
<div STYLE="position: absolute; top:65px; left: 170px;">
<B>Registrazione NUOVO ACCOUNT</B>
</div>

<FORM ID="MyForm" name="MyForm" METHOD=POST onsubmit="return verifica(this)" ACTION="registrazione.asp">
<div STYLE="position: absolute; top:110px; left: 80px;">
Cognome:
<p>Nome:</p>
<p>Indirizzo:</p>
<p>Citta':</p>
<p>Provincia:</p>
<p>Associazione:</p>
<p>Email:</p>
<p>Login:</p>
<p>Password:</p>
</div>
<div STYLE="position: absolute; top:110px; left: 180px; width: 345px;">
<INPUT ID="cognome" TYPE="text" NAME="cognome" size="25" maxlength="25" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top:145px; left: 180px; width: 345px;">
<INPUT ID="nome" TYPE="text" NAME="nome" size="25" maxlength="25" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top: 180px; left: 180px; width: 345px;">
<INPUT ID="indirizzo" TYPE="text" NAME="indirizzo" size="45" maxlength="45" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top: 215px; left: 180px; width: 345px;">
<INPUT ID="citta" TYPE="text" NAME="citta" size="45" maxlength="45" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top:250px; left: 180px;width: 345px;">
<INPUT ID="provincia" TYPE="text" NAME="provincia" size="4" maxlength="2" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top:285px; left: 180px; width: 350px;">
<INPUT ID="associazione" TYPE="text" NAME="associazione" size="50" maxlength="50" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top:320px; left: 180px; width: 345px;">
<INPUT ID="email" TYPE="text" NAME="email" size="25" maxlength="35" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top:355px; left: 180px; width: 345px;">
<INPUT ID="login" TYPE="text" NAME="laloggin" size="25" maxlength="20" value=""><font color="red">&nbsp;*</font>
</div>
<div STYLE="position: absolute; top:390px; left: 180px; width: 345px;">
<INPUT ID="password" TYPE="text" NAME="lapassword" size="25" maxlength="20" value=""><font color="red">&nbsp;*</font>
</div>

<div STYLE="position: absolute; top:430px; left: 200px; width: 300px">
<font size=-1><font color="red">(*)Tutti i campi sono obbligatori</font></font>
</div>
<div STYLE="position: absolute; top:470px; left: 100px;">
<INPUT class="largo" TYPE="submit" value="Salva">
</div>
<div STYLE="position: absolute; top: 470px; left: 400px;">
<INPUT class="largo" TYPE=BUTTON VALUE="Menu" onClick="location.href='menu.asp'">
</div>
</FORM>
<% if len(cognome)>0 Then%>
<div STYLE="position: absolute; top:140px; left: 420px;">
<img SRC="immagini/ok.png" NOSAVE height=100 width=65>
</div>
<%
cognome=""
nome=""
indirizzo=""
citta=""
provincia=""
associazione=""
email=""
loggin=""
password=""
end if
%>
</DIV>
</BODY>
</HTML>
 
Ultima modifica di un moderatore:

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Codice:
var login = form.lalogin.value;
lalogin non esiste, hai scritto con due g
Codice:
var login = form.laloggin.value;
 

WebDr

Nuovo Utente
20 Mar 2017
17
4
3
65
Padova
Codice:
var login = form.lalogin.value;
lalogin non esiste, hai scritto con due g
Codice:
var login = form.laloggin.value;

Ti ringrazio molto e... ti offro un caffè.... purtroppo virtuale :)
Beh, io sono un esperto, ma come hai fatto così rapidamente? c'è un trucco per scovare le cazzarte che si fanno scrivendo :)?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
ogni riga un alert o un console.log()
vedi subito dove lo script si ferma
 

vic53

Nuovo Utente
9 Feb 2019
35
0
6
Fonte Nuova
www.euro1.it
Ho creato una funzione per verificare che gli input obbligatori siano effettivamente riempiti, ma non succede nulla o meglio il tutto passa direttamente a registrazione.asp. Non mi sembra proprio che il codice presenti degli errori, il debug non ne cita, allora ho pensato che sia un problema di chiamata, ma cos'ha il codice seguente che non va?

<FORM ID="MyForm" name="MyForm" METHOD=POST onsubmit="return verifica(this)" ACTION="registrazione.asp"> ....

E la function inserita nell' <head>

function verifica(form){
var cognome = form.cognome.value;
var nome = form.nome.value;
var indirizzo=form.indirizzo.value;
var nvia=indirizzo[indirizzo.length-1];

if ((cognome == "") || (cognome == "undefined")) {
alert("Il campo Cognome è obbligatorio.");
form.cognome.focus();
return false;
}

else if ((nome == "") || (nome == "undefined")) {
alert("Il campo Nome è obbligatorio.");
form.nome.focus();
return false;
} ....ecc.

Dove sbaglio?
 

vic53

Nuovo Utente
9 Feb 2019
35
0
6
Fonte Nuova
www.euro1.it
Io farei cosi ... ti posto un esempio di form con controllo minimo sui campi
Codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Senza nome 1</title>
<script type="text/javascript">
function Verifica(){
// verifica formale scorrendo tutti gli elementi del form e ricercandoli
// tramite il primo carattere del nome quelli ritenuti obbligayori
var x=document.getElementById("nomeform");
for (var i=0;i<x.length;i++)  {
// controlla gli oggetti che iniziano per "K")
   if (x.elements[i].type=="text") {
    if (x.elements[i].name.substr(0,1)=="K") {
     if (x.elements[i].value=="")
      {
      alert("Il campo "+x.elements[i].id + " è vuoto...");
      x.elements[i].focus();
      return false;
      }
   }   
  }
 }
 alert("il form ha i campi correttamente inseriti...");
}
</script>
</head>

<body>
<form name="nomeform" id="nomeform" action="" method="post"  >

<table style="width: 100%">
   <tr>
       <td style="width: 159px">nome</td>
       <td> <input  id="nome" name="Knome" type="text" size="20" /></td>
   </tr>
   <tr>
       <td style="width: 159px">cognome</td>
       <td> <input  id="cognome" name="Kcognome" type="text" /></td>
   </tr>
   <tr>
       <td style="width: 159px">indirizzo</td>
       <td> <input  id="indirizzo" name="indirizzo" type="text" /></td>
   </tr>
   <tr>
       <td style="width: 159px">cap</td>
       <td> <input  id="cap" name="cap" type="text" /></td>
   </tr>
   <tr>
       <td style="width: 159px">città</td>
       <td> <input  id="citta" name="citta" type="text" /></td>
   </tr>
   <tr>
       <td style="width: 159px">telefono</td>
       <td> <input  id="telefono" name="telefono" type="text" /></td>
   </tr>
   <tr>
       <td style="width: 159px">sesso</td>
       <td> <input  id="sesso" name="sesso" type="text" /></td>
   </tr>
   <tr>
       <td style="width: 159px">email</td>
       <td> <input  id="email" name="Kemail" type="text" /></td>
   </tr>
   
</table>
</br>
<input type="button" value="Controllo" onclick="Verifica()" />
</form>
</body>

</html>

ciclo sui campi definiti "text" e solo su quelli che hanno il primo carattere nel nome = "K"
controllo se sia vuoto... e evidenzio il nome id non il nome dove c'è K...
ed esce sul primo errore posizionando il cursore...

ciao
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [Javascript] Verifica calcolo prima di fare insert Javascript 13
S [Javascript] Verifica separatore decimale sistema operativo Javascript 2
P Verifica form solo con php senza javascript PHP 15
P Problema ocon verifica campo in javascript Javascript 7
M Inviare un file su un server remoto con JavaScript Javascript 0
T a href="javascript:;" Javascript 0
F Creare elementi html con javascript Javascript 2
A pulsante di update campo mysql con javascript Javascript 2
8 Javascript - PDF Form Javascript 0
B javascript per problemi con pdf e Safari Javascript 0
N informazione javascript Programmazione 0
I Eecuzione di javascript in ciclo foreach php. PHP 7
P javascript:document.forms Javascript 7
S Consiglio esercizio Javascript Javascript 2
MarcoGrazia Aggiungere o rimuovere classi in javascript Javascript 1
P Passaggio id php a javascript PHP 6
E lettura da un Database con Javascript jQuery 2
V TRIS in javascript Javascript 1
IClaude Funzione Javascript Javascript 8
Alex_70 Javascript date color Javascript 3
F Convertire JavaScript per la compatibilità nei browser obsoleti Javascript 0
I Passare dei parametri in javascript PHP 0
Shyson Meglio Javascript o HTML? Javascript 4
M Chiamare pagina php da javascript Javascript 8
M Errore JavaScript per php [objeto HTMLParagraphElement] PHP 0
D Javascript per il download dei dati Javascript 0
grgfede Problema javascript con aruba Javascript 1
webmachine [PHP] [JAVASCRIPT] Form strano in HTML PHP PHP 1
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
I javascript come caricare una pagina sopra quella corrente in automatico Javascript 2
L [Javascript] Problema salvataggio dati in db Javascript 1
max1974 [Javascript] Grafico chartjs con dati da J.ajax Javascript 3
G Quiz Javascript Javascript 4
A [Javascript] Scrittura su più campi contemporaneamente Javascript 19
F classic asp popolare combo box javascript Presentati al Forum 1
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
F [Javascript] comando innerHTML non funziona Javascript 5
alexice51 proggrammi per scrivere in javascript? Javascript 3
max1974 [Javascript] Accordion aria-exspanded Javascript 0
D [Javascript] salvare immagine canvas - paypal Javascript 0
O [Javascript] Conflitto Jquery: forse... Javascript 0
M [Javascript] Canvas js css Javascript 1
M Programmazione web HTML, CSS e JavaScript Offerte e Richieste di Lavoro e/o Collaborazione 6
G [Javascript] Errore inserimento dati Backend Node.js e workbench Javascript 1
A Creare con Javascript un percorso all'interno di uno spazio Javascript 0
D [Javascript] inserire uno script in un file php Javascript 6
Monital [Javascript] inserire dati estratti dal db in html fisso Javascript 1
K [javascript] Tecnica per rilevare celle contenenti caratteri ricevute in dinamico Javascript 1
F [JavaScript] Ottenere il CSS dopo transform: scale() e transform-origin Javascript 0
S [Javascript] Problema costrutto if Javascript 0

Discussioni simili