Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> сохранение данных формы 
:(
    Опции темы
Ринат
Дата 12.5.2005, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



добрый день
как сохранить данные в полях, при неудачном заполнениии формы, например, пользователь оствил одно пустое поле, получаем ошибку, фокусируем курсор на этом поле (это ясно как) , но данные в других полях сохраняем
спасибо!
PM MAIL   Вверх
Aliance
Дата 12.5.2005, 16:40 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



В чем проблема?
Если страница перезагружается - данные автоматом сохраняются (искл. поле типа password)
Если ты имеешь ввиду просто фокус на поле (не пойму связи) - это нираз обсуждалось и приводилось в примерах.

Поиск рулит
PM MAIL WWW ICQ Skype   Вверх
Sardar
Дата 12.5.2005, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Цитата(Aliance @ 12.5.2005, 15:40)
Если страница перезагружается - данные автоматом сохраняются

Нет не сохраняються, толко если история не загаженна и можно по ссылке "назад" вернуться. Два способа порешать проблему:
  • сохранить в куках, затем через JS всё вернуть - ИМХО не удобно и может проглючить
  • на сервере генерить инпуты с value, который пришёл ранее - самый простой и удобный вариант.



--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Aliance
Дата 12.5.2005, 16:58 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Я всегда нажимал когда назад - у меня данные сохранялись. Естественно, что если перед этими линками был редирект и т.п. - то нет.
PM MAIL WWW ICQ Skype   Вверх
Ринат
Дата 12.5.2005, 17:06 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



после получения от явы собщения об ошибке в поле, данные не сохраняются
PM MAIL   Вверх
Aliance
Дата 12.5.2005, 17:10 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Ринат
Java и JavaScript разные вещи smile
PM MAIL WWW ICQ Skype   Вверх
Ринат
Дата 12.5.2005, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



javascript имел ввиду, да ясно, что разные

PM MAIL   Вверх
Aliance
Дата 12.5.2005, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Код или ссылку кинешь, где у тебя проблема?
PM MAIL WWW ICQ Skype   Вверх
Ринат
Дата 12.5.2005, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



тот же код
вот он
Код

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
 <script Language="JavaScript"> 
var validator_image;

function isEMailAddr(email) {
var str = email.value;
  var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
  if (!str.match(re)) {
      alert("pr email.");       
     validator_image = "nein.jpg";
  } else {
    validator_image = "ja.jpeg";
    checkVorname();
    
  }
 }
 
function checkVorname() {
if (document.form.vorname.value.length != 0) 
    if (document.form.nachname.value.length != 0)
        if (document.form.adresse.value.length != 0) 
            if (document.form.pass.value.length != 0) 
                if (document.form.pvd.value.length != 0) 
                    if (document.form.nummer.value.length != 0) 
                        if (document.form.alias.value.length != 0) 
                            {
                            validator_image = "ja.jpeg";
                            return (true);
                            }
                        else 
                        { 
                        validator_image = "nein.jpg";
                        alert ("alias");
                        }
                    else 
                    {
                    validator_image = "nein.jpg";
                    alert ("nummer");
                    }
                else 
                {
                validator_image = "nein.jpg";
                alert ("pvd");
                }
            else 
            {
            validator_image = "nein.jpg";
            alert ("pass");
            }
        else 
        {
        validator_image = "nein.jpg";
        alert ("adresse");
        }
    else 
    {
    validator_image = "nein.jpg";
    alert ("nachname");
    }
else 
{
validator_image = "nein.jpg";
alert ("vorname");
}                        
}

var place1 = document.getElementById("placeholder1");
place1.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place2 = document.getElementById("placeholder2");
place2.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place3 = document.getElementById("placeholder3");
place3.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place4 = document.getElementById("placeholder4");
place4.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place5 = document.getElementById("placeholder5");
place5.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place6 = document.getElementById("placeholder6");
place6.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place7 = document.getElementById("placeholder7");
place7.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
var place8 = document.getElementById("placeholder8");
place8.innerHTML = "<img scr='"+validator_image+"' ALT='' />";
</SCRIPT>
</head>

<body>
<form name="form" method="post" onSubmit="isEMailAddr(email)">

<input type="text" name="vorname"><span id="placeholder1"></span>vorname<br>
<input type="text" name="nachname"><span id="placeholder2"></span>nachname<br>
<input type="text" name="adresse"><span id="placeholder3"></span>adresse<br>
<input  type="password" name="pass"><span id="placeholder4"></span>password<br>
<input  type="text" name="pvd"><span id="placeholder5"></span>pvd<br>
<input  type="text" name="nummer"><span id="placeholder6"></span>nummer<br>
<input  type="text" name="alias"><span id="placeholder7"></span>alias<br>
<input type="text" name="email"><span id="placeholder8"></span>email<br>
<input type="submit" value="check">
</form>  
</body>
</html>


нужно , чтобы сохранял данные полей, например, заполнил 5 полей, email неправильный, нужно, чтобы данные этих полей после получения alert сохранялись

М
 
Ринат - не спеши, пользуйся тегом code (кнопка есть сверху), не в первый раз напоминаем;-)

PM MAIL   Вверх
Aliance
Дата 12.5.2005, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Тебе нужно не 1 переменная validator_image а столько, сколько у тебя полей (т.е. в данный момент 8).
PM MAIL WWW ICQ Skype   Вверх
Ринат
Дата 13.5.2005, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



доброе утро, сделал 8 переменных
Код


var validator_image1;
var validator_image2;
...
var validator_image8;

а что за ошибка

place1 has no properties

указывает на строку
var place1 = document.getElementById("placeholder1");
place1.innerHTML = "<img scr='"+validator_image1+"' ALT='' />";


в конце , перед закрывающим тегом скрипта ставлю
Код

var place1 = document.getElementById("placeholder1");
place1.innerHTML = "<img scr='"+validator_image1+"' ALT='' />";
var place2 = document.getElementById("placeholder2");
place2.innerHTML = "<img scr='"+validator_image2+"' ALT='' />";
var place3 = document.getElementById("placeholder3");
place3.innerHTML = "<img scr='"+validator_image3+"' ALT='' />";


PM MAIL   Вверх
Ринат
Дата 13.5.2005, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



картинки не появляются, только alert
PM MAIL   Вверх
Aliance
Дата 13.5.2005, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Ринат
Не нужно флудить! Нужно относится с понимание к труду других. Мы не роботы 24 часа в сутки сидеть тут и ждать именно твоего вопроса!

Элемент с id="placeholder1" задан к HTML коде?
Кидай весь исправленный код!
PM MAIL WWW ICQ Skype   Вверх
Ринат
Дата 13.5.2005, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 144
Регистрация: 31.3.2005

Репутация: -2
Всего: нет



да хорошо, простите
вот полный код
я немного другой вариант с подсветкой поля сделал (красным), но хотелось бы с картинками
спасибо
вот изначальный код
Код

 <script Language="JavaScript"> 
var validator_image1;
var validator_image2;
var validator_image3;
var validator_image4;
var validator_image5;
var validator_image6;
var validator_image7;
var validator_image8;


function isEMailAddr(email) {
var str = email.value;
  var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
  if (!str.match(re)) {
      validator_image_nein;
      validator_image8 = "nein.jpg";
      alert("pr email.");       
     
 
    
  } else {
    validator_image8 = "ja.jpg";
    checkVorname();
    
  }
 }
 
function checkVorname() {
if (document.form.vorname.value.length != 0) 
    if (document.form.nachname.value.length != 0)
        if (document.form.adresse.value.length != 0) 
            if (document.form.pass.value.length != 0) 
                if (document.form.pvd.value.length != 0) 
                    if (document.form.nummer.value.length != 0) 
                        if (document.form.alias.value.length != 0) 
                            {
                            validator_image1 = "ja.jpg";
                            validator_image2 = "ja.jpg";
                            validator_image3 = "ja.jpg";
                            validator_image4 = "ja.jpg";
                            validator_image5 = "ja.jpg";
                            validator_image6 = "ja.jpg";
                            validator_image7 = "ja.jpg";
                            
                            return (true);
                            }
                        else 
                        { 
                        validator_image7 = "nein.jpg";
                        alert ("alias");
                        return (false);
                        }
                    else 
                    {
                    validator_image6 = "nein.jpg";
                    alert ("nummer");
                    }
                else 
                {
                validator_image5 = "nein.jpg";
                alert ("pvd");
                }
            else 
            {
            validator_image4 = "nein.jpg";
            alert ("pass");
            }
        else 
        {
        validator_image3 = "nein.jpg";
        alert ("adresse");
        }
    else 
    {
    validator_image2 = "nein.jpg";
    alert ("nachname");
    }
else 
{
validator_image1 = "nein.jpg";
alert ("vorname");
}                        
}

var place1 = document.getElementById("placeholder1");
place1.innerHTML = "<img scr='"+validator_image1+"' ALT='' />";
var place2 = document.getElementById("placeholder2");
place2.innerHTML = "<img scr='"+validator_image2+"' ALT='' />";
>var place3 = document.getElementById("placeholder3");
place3.innerHTML = "<img scr='"+validator_image3+"' ALT='' />";
var place4 = document.getElementById("placeholder4");
place4.innerHTML = "<img scr='"+validator_image4+"' ALT='' />";
var place5 = document.getElementById("placeholder5");
place5.innerHTML = "<img scr='"+validator_image5+"' ALT='' />";
var place6 = document.getElementById("placeholder6");
place6.innerHTML = "<img scr='"+validator_image6+"' ALT='' />";
var place7 = document.getElementById("placeholder7");
place7.innerHTML = "<img scr='"+validator_image7+"' ALT='' />";
var place8 = document.getElementById("placeholder8");
place8.innerHTML = "<img scr='"+validator_image8+"' ALT='' />";
</SCRIPT>
</head>

<body>
<form name="form" method="post" onSubmit="isEMailAddr(email)">
<input type="text" name="email"><span id="place8.innerHTML"></span>email<br>
<input type="text" name="vorname"><span id="placeholder1"></span>vorname<br>
<input type="text" name="nachname"><span id="placeholder2"></span>nachname<br>
<input type="text" name="adresse"><span id="placeholder3"></span>adresse<br>
<input  type="password" name="pass"><span id="placeholder4"></span>password<br>
<input  type="text" name="pvd"><span id="placeholder5"></span>pvd<br>
<input  type="text" name="nummer"><span id="placeholder6"></span>nummer<br>
<input  type="text" name="alias"><span id="placeholder7"></span>alias<br>

<input type="submit" value="check">
</form>  
</body>
</html>

PM MAIL   Вверх
Aliance
Дата 13.5.2005, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Используй, например такое:
Код

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>© Aliance [ http://editor.sut.net.ru/editor.html ]</TITLE>
<script type="text/javascript" language="JavaScript">
<!--
function focusElement(formName, elemName) {
  var elem = document.forms[formName].elements[elemName];
  elem.focus();
  elem.select();
}

function isNotEmpty(elem, id) {
  var myimg = document.getElementById(id);
  var str = elem.value;
  var re = /.+/;
  if(!str.match(re)) {
      alert("Нужно заполнить все обязательные поля.");
      setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
      myimg.src = "nein.gif";
      return false;
  } else {
      myimg.src = "ja.gif";
      return true;
  }
}

function validateForm(form) {
   if (isNotEmpty(form.pole1, 'pole1')) {
      return true;
   }
   return false;
}
// -->
</SCRIPT>
</HEAD>

<BODY>

<form action="" name="f1">
Поле: <INPUT type="text" name="pole1" value="" /> <IMG src="nein.gif" id="pole1" />
<INPUT type="button" onclick="if (validateForm(this.form)) {this.form.submit() };" value="Проверить" />
</form>

</BODY>
</HTML>

PM MAIL WWW ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0945 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.