Интеграция Flash с веб-приложениями > Создание форм > Проверка введенных данных

Проверка введенных данных

Бывают случаи, когда следует проверять информацию, которую вводят пользователи. Например, вы не хотите чтобы пользователи вводили текст в окне ввода телефонного номера. Используйте ряд команд set variable в комбинации с for и if, чтобы проверять корректность введенных данных.

Следующий пример проверяет является ли введенная строка номером, и, если она оказалась номером, скрипт проверяет, записан ли этот номер в формате ###-###-#### или нет. Если данные правильные, появляется сообщение "Good, this is a valid phone number!" (это верный номер) а если неправильная, то скрипт выводит сообщение "This phone number is invalid!" (этот номер не верен!).

Чтобы использовать этот скрипт в ролике, создайте два текстовых поля и укажите "Input" в панели Text Options для каждого из полей. Назначьте переменную phoneNumber одному текстовому полю, а переменную message другому. Назначьте следующие команды кнопке рядом с текстовыми полями:

on (release) {
	valid = validPhoneNumber(phoneNumber);
	if (valid) {
		message = "Good, this is a valid phone number!";
	} else {
		message = "This phone number is invalid!";
	}
	function isdigit(ch) {
		return ch.length == 1 && ch >= '0' && ch <= '9';
	}
	function validPhoneNumber(phoneNumber) {
		if (phoneNumber.length != 12) {
			return false;
		}
		for (var index = 0; index < 12; index++) {
			var ch = phoneNumber.charAt(index);
			if (index == 3 || index == 7) {
				if (ch != "-") {
					return false;
				}
			} else if (!isdigit(ch)) {
				return false;
			}
		}
		return true;
	}
}

Чтобы отослать данные, создайте кнопку, которая выполняет команды подобные этим: (Замените аргументы getURL аргументами соответствующими вашему ролику

on (release) {
	if (valid) {
		getURL("http://www.webserver.com", "_self", "GET");
	}
}

Для дополнительной информации смотрите команды set, for и if в Главе 7, "Словаря ActionScript"