vyskakujuse okno ze do <input> nevlozil text
-
geoge046
Star
- Príspevky: 608
- Registrovaný: 10 aug 2005, 14:15
- Bydlisko: Prievidza
- Kontaktovať používateľa:
vyskakujuse okno ze do <input> nevlozil text
Ahojte, nepomohol by mi niekto urobit vyskakujuce okno ked niekto nezada potrebne informacie do <input> a stlaci odoslat? Prosim po lopate. 
Napríklad takto:
Kód: Vybrať všetko
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>skuska javascriptu</title>
<script language="javascript">
<!--
function checkform()
{
var retval
retval = true
if (document.all['name'].value == "")
{
alert("Nevyplnil si meno!");
document.all['name'].focus();
retval = false;
}
return retval;
}
-->
</script>
</head>
<body>
<form method="post" action="zpracuj.php" onsubmit="return checkform();">
<input type="text" name="name" value=""/>
<input type="submit" value="OK">
</form>
</body>
</html>Alebo trochu inak:
Kód: Vybrať všetko
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
<!--
function formverify()
{
var text = document.myform.meno.value;
if (text == "") {
alert("Musite zadat meno.");
document.myform.meno.focus();
return false;
}
return true;
}
// -->
</script>
</head>
<body>
<div>
<form name="myform" action="www.test.a" method="post" onsubmit="return formverify()">
Meno:<input type="text" name="meno">
<input type="submit">
</form>
</div>
</body>
</html>
-
mastermind
VIP
- Príspevky: 4810
- Registrovaný: 09 feb 2005, 13:17
Musíš napísať, čo potrebuješ dosiahnuť.
Potom ti budem vedieť pomôcť lepšie (dá sa urobiť aj elegantnejší skript, len musím vedieť, čo chceš testovať). Tu je ukážkový skript:
Kód: Vybrať všetko
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript">
<!--
function isEmpty(str)
{
for (var i = 0; i < str.length; i++) {
if (" " != str.charAt(i))
return false;
}
return true;
}
function checkNumeric(value)
{
pattern = /^ *[0-9]+ *$/;
return pattern.test(value);
}
function formValidate(form)
{
if (isEmpty(form.number.value)) {
form.number.focus();
alert("Číslo nemôže byť prázdne");
return false;
}
if (checkNumeric(form.number.value) == false) {
form.number.focus();
alert("\"" + form.number.value + "\"" + " nie je správny údaj");
return false;
} else {
var number = parseInt(form.number.value);
if (number < 1 || number > 20) {
form.number.focus();
alert("Číslo musí byť medzi 1 až 20");
return false;
}
}
return true;
}
// -->
</script>
</head>
<body>
<div>
<form action="www.test.tst" method="get" onsubmit="return formValidate(this)">
Číslo: <input type="text" name="number"><br>
<input type="submit" name="snd" value="Poslať">
</form>
</div>
</body>
</html>-
geoge046
Star
- Príspevky: 608
- Registrovaný: 10 aug 2005, 14:15
- Bydlisko: Prievidza
- Kontaktovať používateľa:
No napriklad na nejakej stranke budem mat PSČ a tam majú byť iba číslice. V maili maju byt pouzite znaky ako "@" "." Takto to myslim v pripade na tieto dve veci. Vopred dakujem.chrono napísal:Musíš napísať, čo potrebuješ dosiahnuť.Potom ti budem vedieť pomôcť lepšie (dá sa urobiť aj elegantnejší skript, len musím vedieť, čo chceš testovať).
Tu je PSČ: tag <input> bude
A tu je Email: <input>:Testovať správnosť emailovej adresy je dosť zložitý problém. Aby to bolo celkom presné, muselo by to byť dosť zložité.
Kód: Vybrať všetko
function checkPSC(value)
{
pattern = /^ *[0-9]{5} *$/;
return pattern.test(value);
}
function formValidate(form)
{
if (checkPSC(form.psc.value) == false) {
form.psc.focus();
alert("Musíte zadať PSČ");
return false;
}
return true;
}Kód: Vybrať všetko
<input type="text" name="psc">Kód: Vybrať všetko
function checkEmail1(str)
{
return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}
function checkEmail2(str)
{
pattern = /^[^@]+@[^@]+.[a-z]{2,}$/i
return pattern.test(str);
}
function formValidate(form)
{
if (checkEmail2(form.email.value) == false) {
form.email.focus();
alert("Musíte zadať Email");
return false;
}
return true;
}Kód: Vybrať všetko
<input type="text" name="email">-
geoge046
Star
- Príspevky: 608
- Registrovaný: 10 aug 2005, 14:15
- Bydlisko: Prievidza
- Kontaktovať používateľa:
No a ked chcem tu pridat viac polí???lama2d napísal:Napríklad takto:Kód: Vybrať všetko
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>skuska javascriptu</title> <script language="javascript"> <!-- function checkform() { var retval retval = true if (document.all['name'].value == "") { alert("Nevyplnil si meno!"); document.all['name'].focus(); retval = false; } return retval; } --> </script> </head> <body> <form method="post" action="zpracuj.php" onsubmit="return checkform();"> <input type="text" name="name" value=""/> <input type="submit" value="OK"> </form> </body> </html>
Tak to checkform bude zložitejšie:
Kód: Vybrať všetko
function checkform()
{
if (document.all['name'].value == "") {
alert("Nevyplnil si meno!");
document.all['name'].focus();
return false;
}
if (document.all['psc'].value == "") {
alert("Nevyplnil si PSC");
document.all['psc'].focus();
return false;
}
return true;
}