Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.07.2012, 11:36
Новичок на форуме
Отправить личное сообщение для Sergios Посмотреть профиль Найти все сообщения от Sergios
 
Регистрация: 30.01.2012
Сообщений: 9

Функция проверки не пропускает
Есть функция проверки одного поля в форме.
if (!empty(field))
	{
	   if(field.match(/^[^а-я][a-z0-9_-]+$/))
       return '';
       else return "Поле alias :  \n допускается латинский алфавит, \n           цифры,знаки - и _"; 
    }

В принципе работает. Но после отправки данных, если кликнуть кнопкой браузера назад, заполнить форму она не пропускает (даже если заполнено все, в полном соответствии). Перезагрузив страницу-снова пропускает. Но при этом поля очищаются.
Подскажите пожалуйста, как можно побороть эту неприятность?
Ответить с цитированием
  #2 (permalink)  
Старый 05.07.2012, 11:43
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Sergios,
Выложите рабочий пример в топик вместе с HTML
как оформить - тут => http://javascript.ru/formatting
Ответить с цитированием
  #3 (permalink)  
Старый 05.07.2012, 18:37
Новичок на форуме
Отправить личное сообщение для Sergios Посмотреть профиль Найти все сообщения от Sergios
 
Регистрация: 30.01.2012
Сообщений: 9

<! DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head> 
<title></title>
<meta http-equiv="Content-type" content="text/html" charset="utf-8">
<script type="text/javascript">

                   // Общая функция проверки
function validate(form) 
{
	fail  ='';
    if(!empty(validateName(form.name.value)))
	fail  = validateName(form.name.value);
	
	else if(!empty(validateTitle(form.title.value)))
	{
	   if(!empty(fail))  fail+= validateTitle(form.title.value);
	   else fail = validateTitle(form.title.value);
	}

	else if(!empty(validateAlias(form.alias.value)))
	{
	   if(!empty(fail))  fail+= validateAlias(form.alias.value);
	   else fail = validateAlias(form.alias.value);
	}
	else if(!empty(validateМetadesc(form.metadesc.value)))
	{
	   if(!empty(fail))  fail+= validateМetadesc(form.metadesc.value);
	   else fail = validateМetadesc(form.metadesc.value);
	}
	else if(!empty(validateМetakey(form.metakey.value)))
	{
	   if(!empty(fail))  fail+= validateМetakey(form.metakey.value);
	   else fail = validateМetakey(form.metakey.value);
	}
	else if(!empty(validateH1(form.h1.value)))
	{
	   if(!empty(fail))  fail+= validateH1(form.h1.value);
	   else fail = validateH1(form.h1.value);
	}
	
	if (empty(fail)) return true;
	else { alert(fail); return false }
}
             
function validateName(field) 
{
	if (empty(field)) return "Незаполнено поле Названиe.\n";
	else return '';
}
function validateTitle(field)
{
	if (empty(field)) return "Незаполнено поле title.\n";
	else return '';
}
function validateAlias(field)
 {
	if (empty(field)) return "Незаполнено поле alias.\n";
	
	if (!empty(field))
	{
	   if(field.match(/[a-z0-9_-]+$/))
       return '';
       else return "Поле alias :  \n допускается латинский алфавит, \n цифры,знаки - и _"; 
    }
}
function validateH1(field)
{
	if (empty(field)) return "Незаполнено поле h1.\n";
	else return '';
}
function validateМetadesc(field)
{
	if (empty(field)) return "Незаполнено поле Описание.\n";
	else return '';
}
function validateМetakey(field)
{
	if (empty(field)) return "Незаполнено поле Ключевые слова.\n";
	else return '';
}
function validateText(field)
{
	if (empty(field)) return "Незаполнено поле текст.\n";
	else return '';
}


function empty($a)
{
   if($a=='')
   return true;  
}

</script>


</head>
<body >

<div class="new" >
<form  id="new_cont" name="new_cont" method="post" action="" 
onSubmit="return validate(this)">
<p>Название (будет отображено в хлебных крошках)<br />
    <label>
      <input  style="margin-left: 85px; margin-top:10px;" type="text"  name="name" id="name" size="50" maxlength="50"  value="" />
    </label>
  </p>
  <p>title 
    <label>    
      <input style="margin-left: 45px; font-size:16px; text-align:left;" type="text" name="title" id="title" size="70" maxlength="70" <?php echo 'value="'.$title.'"';?> />
    </label>
  </p>
  <p>alias
    <label>
      <input style="margin-left: 40px;" type="text" name="alias" id="alias"  size="50" maxlength="50" <?php echo 'value="'.$alias.'"';?>/>
    </label>
  </p>
  <p>
    <label>Описание
      <textarea style="margin-left: 85px;" name="metadesc" id="metadesc" cols="90" rows="3" wrap="off"><?php echo $metadesc;?></textarea>
    </label>
  </p>
  <p>Ключевые слова <br />
    <label>
      <textarea style="margin-left: 85px;" name="metakey" id="metakey" cols="50" rows="2" wrap="soft"><?php echo $metakey;?></textarea>
    </label>
  </p>
  
  <div class="submit" >
    <label>
      <input  type="submit" name="button" id="button" value="Отправить" />
    </label>
  </div>
</form>
</div>
</body>
</html>

Последний раз редактировалось Sergios, 05.07.2012 в 21:24.
Ответить с цитированием
  #4 (permalink)  
Старый 05.07.2012, 18:45
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Sergios,
вместо [js] [/js] нужно явно прописать

Цитата:
<script type="text/javascript">
Тут тело скрипта
</script>
Поскольку Вы уже Обрамили в [html]
Ответить с цитированием
  #5 (permalink)  
Старый 05.07.2012, 21:26
Новичок на форуме
Отправить личное сообщение для Sergios Посмотреть профиль Найти все сообщения от Sergios
 
Регистрация: 30.01.2012
Сообщений: 9

Упс ...Спасибо
Deff Только в таком виде все работает прекрасно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функция и несуществующий id Ankh Элементы интерфейса 4 10.02.2012 23:49
Функция проверки возможности перехода на страницу. Cerber24 Events/DOM/Window 10 05.10.2011 09:37
функция проверки форм не возвращает false voodoo Общие вопросы Javascript 6 27.06.2011 13:14
Где вызывается функция? cradis Общие вопросы Javascript 5 23.04.2011 13:47
Функция проверки onDomReady. Не могу разобраться с кодом vandy3 Общие вопросы Javascript 6 08.11.2010 09:47