PDA

Prikaži potpunu verziju : Javascript provera forme


nepoverljiv
16.12.2011, 0:13
Imam problem sa proverom forme, kada stavim <button type="submit"></button> , tada mogu kao dugme da stavim bilo koju sliku i provera mi radi da li je popunjeno polje. Medjutim ja hocu da mi submit bude link, ali kad tako stavim on uopste ne proverava da li je polje popunjeno nego direktno ide na izvrsavanje. Proveravao sam ovako polja:

function Validate3(){
var name=document.komentar.name
var text=document.komentar.text
if ((name.value==null)||(name.value=="")){
alert("Niste uneli ime!")
name.focus()
return false
}

if ((text.value==null)||(text.value=="")){
alert("Niste uneli text poruke!")
text.focus()
return false
}
return true
}
</script>

Da li neko moze da mi pomogne da mi proverava polje kada stavim i da mi bude link submit button. To inace uradim na ovaj nacin

<a href="sendvest.php" onClick="javascript:document.form6.submit();"> Pošalji komentar </a>

PDarko
16.12.2011, 22:28
Problem je u tome što onclick (ovako kako si ti napisao) šalje formu bez predhodne provere.

Nisi postavio HTML kod tako da ću ja da izmislim jedan.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Komentar</title>
<script type="application/javascript" src="script.js"></script>
</head>
<body>
<form id="komentar" action="sendvest.php" method="post">
<p>
Ime: <input type="text" id="name">
</p>
<p>
Tekst: <textarea id="text" cols="60" rows="15"></textarea>
<a id="submit" href="#">Submit</a>
</p>
</form>
</body>
</html>
// script.js
function validateForm(event) {
var name = document.getElementById("name"),
text = document.getElementById("text");

if (name && !name.value) {
alert("Niste uneli ime!");
name.focus();
return false;
}

if (text && !text.value) {
alert("Niste uneli tekst poruke!");
text.focus();
return false;
}

return true;
}

document.addEventListener("DOMContentLoaded", function () {
var submit = document.getElementById("submit");

if (submit) {
submit.addEventListener("click", function () {
var form = document.getElementById("komentar");
if (form && validateForm())
form.submit();
}, false);
}
}, false);

PS. Iz tvog posta se može zaključiti da si početnik tako da ću ti dati jedan vrlo koristan savet: nemoj da mešaš skripte i stilove sa HTML-om. To se smatra lošom praksom.