Notice: Undefined variable: this in /home/dimarini/public_html/libraries/src/Application/CMSApplication.php on line 441

JavaScript III част

Легализиране на форми в JavaScript

В JavaScript могат да се легализират данни на HTML форми преди съдържанието да се изпрати към сървъра. Обикновено, данните от формите които се проверяват от JavaScript са:

  • попълнени ли са задължителните полета
  • въведен ли е валиден e-mail адрес
  • въведени ли са валидни данни
  • въведен ли е текст в цифрови полета
Задължителни полета
В примера по-долу е представена функция validate_required, която проверява дали е попълнено и правилно ли е попълнено задължително поле за e-mail адрес. Когато това поле е празно или е неправилно попълнено от функцията се връща false, а когато е попълнено и то правилно отговора е true. Следващата функция validate_form проверява генерираното от предишната функция и ако е false се отваря popup прозорец с надпис "Непопълнен или невалиден e-mail адрес!" (виж примера в браузъра):
<!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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> Легализиране на форми в JavaScript </title>
<script type="text/javascript">
function validate_required(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
if (value==null||value==""||apos<1||dotpos-apos<2)
{
alert(alerttxt);return false;
}
else
{
return true;
}
}
}

function validate_form(thisform)
{
with (thisform)
{
if (validate_required(email,"Непопълнен или невалиден e-mail адрес!")==false)
{email.focus();return false;}
}
}

</script>
</head>
<body>
<form action="xxxxx.html" onsubmit="return validate_form(this)" method="post">
e-mail адрес: <input type="text" name="email" size="30">
<input type="submit" value="Изпрати">
</form>
</body>
</html>