Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 06.02.2002, 22:05
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 1  
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
Post Проверка формы хитрым способом

Приветствую!
расклад: имееться набор функций (см. ниже) для проверки полей формы. Имееться масив с полями формы.
имееться функция ValidateForm();
проблема: когда сразу надажать на т.е. запустить функцию ВалидейтФорм... окно трейс получяеться пустое только после того как чот то напишеш в поле оно выдает соотвецтвенный результат фелс исли заполнено.. а потом если стреть то тру.
еще есть функция которая управляет переходом курсора в полях... вот она
// TabOrder check------------

_root.TabSelection = function (fields)
{
_focusrect = false;
this.fields = fields.split(",");
this.field = null;
};
_root.TabSelection.prototype.select = function ()
{
if (Key.isDown(9)) {
this.field = Selection.getFocus();
for (var i = 0; i<this.fields.length; i++)
{
if (this.fields[i] == this.field)
{
if (i == this.fields.length-1)
{
i = 0;
}else {
i++;
}
Selection.setFocus(this.fields[i]);
break;
}
}
}
};
_root.Tab = new _root.TabSelection ("_level0.forma.fname,_level0.forma.lname,_level0.forma.email,_level0.forma.cname,_level0.forma.telno,_level0.forma.comments");

///---------------------------------
чего надо добиться.
для "fname","lname","cname","comments");
применить функцию isEmpty()
для поля "email" isEmail()
а для "telno" isDigit.
если все поля заполнены как нужно то do.something();
если нет то возвратить в те поля которые заполнены неправилно предуприждение = "Неправильно что-то тут!"
при этом хотелось бы использовать для всего этого один обЪект _root.Tab = new _root.TabSelection.

Предложения есть? спасибо.

var whitespace = " \t\n\r";
var defaultEmptyOK = false
//
//--- functions set 2 validate form---
String.prototype.isEmpty = function(){
var s = this.toString();
return ((s == null) || (s.length == 0))

}
String.prototype.isWhitespace = function(){
var s = this.toString();
if (isEmpty(s)) return true;
for (i=0;i<s.length;i++) {
if (s.charCodeAt(i) >= 32) return false;
}
return true;
}
String.prototype.isDigit = function(){
c = this.toString();
return ((c >= "0") && (c <= "9"))
}

String.prototype.isEmail = function(eok){
//True if string s is a valid email address.
var s = this.toString();
if (this.isEmpty())
if (arguments.length == 0) return defaultEmptyOK;
else return arguments[0];
if (this.isWhitespace()) return false;
var i = 1;
var sLength = s.length;
while ((i < sLength) && (s.charAt(i) != "@")){
i++;
}
if ((i >= sLength) || (s.charAt(i) != "@")) return false;
else i += 2;
while ((i < sLength) && (s.charAt(i) != ".")){
i++
}
if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
else return true;
}

ValidateForm = function ()
{
var FormFields = new Array ("fname","lname","email","cname","telno","comments");
for (var pole in FormFields)
{
trace(eval(FormFields[pole]).isEmpty())

}


};

Старый 07.02.2002, 01:15
Junge вне форума Посмотреть профиль Отправить личное сообщение для Junge Найти все сообщения от Junge
  № 2  
Junge
 
Аватар для Junge

Регистрация: Jul 2001
Адрес: Питер
Сообщений: 820
Отправить сообщение для Junge с помощью ICQ
давай исходник

Старый 07.02.2002, 06:32
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 3  
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
По умолчанию вот он

всего 5 к
Вложения
Тип файла: zip contactform.zip (5.7 Кб, 59 просмотров)

Старый 07.02.2002, 12:42
Хрюндик вне форума Посмотреть профиль Отправить личное сообщение для Хрюндик Посетить домашнюю страницу Хрюндик Найти все сообщения от Хрюндик
  № 4  
Хрюндик
 
Аватар для Хрюндик

Регистрация: Sep 2000
Сообщений: 326
Отправить сообщение для Хрюндик с помощью ICQ
извини, мне лень было читать, но помойму трабла в том что у незаполненных полей значение null, вот на это и надо проверять их
__________________
Флэш - это искусство(читай издевательство)

Старый 07.02.2002, 15:46
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 5  
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
По умолчанию :) :)

Цитата:
Оригинал написал(а) Хрюндик
извини, мне лень было читать, но помойму трабла в том что у незаполненных полей значение null, вот на это и надо проверять их


извени.. мне лень было отвечять... но вся правда в том что действительно таки значение нулл! или андифаинд у пустых полей.
ты братело еще раз прости миня.. но это уже второй раз ты даеш советы не поделу и НЕ о деле.

поясняю.. в данном случяе речь идет об использовании хитрого приема в програмировании.. т.е. хочеться написать очень хитрый код ... пожарить яишницу яйца не розбив.
конечно можно было бы сделать и проще , но сделать хочю правильнее.

Старый 07.02.2002, 17:37
Хрюндик вне форума Посмотреть профиль Отправить личное сообщение для Хрюндик Посетить домашнюю страницу Хрюндик Найти все сообщения от Хрюндик
  № 6  
Хрюндик
 
Аватар для Хрюндик

Регистрация: Sep 2000
Сообщений: 326
Отправить сообщение для Хрюндик с помощью ICQ
Изивните, больше не буду...
Щас покопаюсь может и пойму в чем дело ...
__________________
Флэш - это искусство(читай издевательство)

Старый 07.02.2002, 18:03
Хрюндик вне форума Посмотреть профиль Отправить личное сообщение для Хрюндик Посетить домашнюю страницу Хрюндик Найти все сообщения от Хрюндик
  № 7  
Хрюндик
 
Аватар для Хрюндик

Регистрация: Sep 2000
Сообщений: 326
Отправить сообщение для Хрюндик с помощью ICQ
Покапался я и понял одну очень умную вешь :

делай как проще, а то будет много проблем.

Я понимаю, что краткость сестра таланта, но зачем же так?
Почему нельзя сделать все по-простому.
Если надо могу даже сам сделать.
А так мне понравилось копаться в твоем исходнике, INC
Я еще буду копаться, очень охота понять как эта штука работает...
__________________
Флэш - это искусство(читай издевательство)

Старый 07.02.2002, 20:24
INK• вне форума Посмотреть профиль Отправить личное сообщение для INK• Посетить домашнюю страницу INK• Найти все сообщения от INK•
  № 8  
INK•
 
Аватар для INK•

Регистрация: Nov 2001
Сообщений: 105
Отправить сообщение для INK• с помощью ICQ
ну копайся.. типа ройся ... просто делать нельзя..
пока ты там копался я придумал сделать валидатор мыла на РэгЭкс.... это типа еще сложнее..
успехов
Цитата:
Оригинал написал(а) Хрюндик
Покапался я и понял одну очень умную вешь :

делай как проще, а то будет много проблем.

Я понимаю, что краткость сестра таланта, но зачем же так?
Почему нельзя сделать все по-простому.
Если надо могу даже сам сделать.
А так мне понравилось копаться в твоем исходнике, INC
Я еще буду копаться, очень охота понять как эта штука работает...

Создать новую тему   Часовой пояс GMT +4, время: 01:22.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 01:22.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.