02.12.2014, 22:20
|
Новичок на форуме
|
|
Регистрация: 02.12.2014
Сообщений: 3
|
|
Проверка корректности ввода в форму JavaScript
<%@ LANGUAGE = JScript %>
<% group1='015';%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="ru">
<title>Заказ цветов</title>
<script language="JavaScript">
function proverka(){
stroka=document.form1.ff.value;
R=0;
var x=""
x=document.form1.ff.value;
for (i = 0; i < x.length; i++){
z=(x.substring(0,3).toUpperCase()+x.substring(3,7).toLowerCase()+x.substring(7,i).toUpperCase());
}
if (x!=z)
{alert('ФИО введены неправильно.');
}
else {
R+=1; alert('ФИО введены правильно.')
}
}
</script>
<body background="images/fonoglavl0.jpg">
<meta name="Microsoft Border" content="t, default">
<form method="GET" name="form1" action="1.htm" >
<p> </p>
<hr>
<p align="center"><b><font color="#33CC33" size="6">Заказ цветов</font></b></p>
<p align="left">
Контакты</p>
<dl>
<dd>
<table>
<tr>
<td>
<p align="left">ФИО</td>
<td>
<p align="left">
<input type="text" size="35" maxlength="256" name="ff" value='' > <span lang="ru"></td>
</tr>
<tr>
<td>
<p align="left">Телефон
</td>
<td>
<p align="left"><input type="text" size="35" name="tt" value=''> <span lang="ru"></td>
</tr>
</table>
<p align="left">
Получатель доставки</p>
<table>
<tr>
<td width="101">
<p align="left">ФИО
</td>
<td>
<p align="left">
<input type="text" size="35" name="ff2" value=''> <span lang="ru"></td>
</tr>
</table>
<table>
<tr>
<td>
<p align="left">Дата
</td>
<td>
<p align="left">
<input type="text" size="35" name="dd" value=''> <span lang="ru"></td>
</tr>
</table>
<table>
<tr>
<td>
<p align="left">Адрес
</td>
<td>
<p align="left">
<input type="text" size="35" name="aa" value=''> <span lang="ru"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<div align="left">
<dt>
Способ оплаты</dt>
</div>
<dd> </dd>
<dd>
<table>
<tr>
<td>
<p align="left">Номер карты </td>
<td>
<p align="left">
<input type="text" size="35" name="oo" value=''> <span lang="ru"></td>
</tr>
</table>
</dd>
</dl>
<p><input type="submit" value="Добавить" name="B1" onClick="proverka()" > <input type="reset" value="C6poc" name="B2"></p>
<p align="left"><a href="def.asp"><font color="#FF0066">
<span style="background-color: #FFFFFF">Работа с БД</span></font></a></p>
</form>
<hr>
</head>
</body>
</html>
|
|
02.12.2014, 22:21
|
Новичок на форуме
|
|
Регистрация: 02.12.2014
Сообщений: 3
|
|
как написать проверку корректности ввода, если для фамилии нужно чтобы было так Сначала 3 больших, потом 4 маленьких, остальные большие буквы, дата былы в формате ЧЧ:ММ:ГГГГ Пробел (время в формате) ЧЧ:ММ, номер карты 16 цифр(только цифры, адрес в формате г. пробел, с большой буквы город
|
|
03.12.2014, 04:57
|
Профессор
|
|
Регистрация: 09.11.2014
Сообщений: 610
|
|
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="ru">
<title>Заказ цветов</title>
<script language="JavaScript">
function proverka(){
var get=function(name){return document.getElementsByName(name)[0]}
var contacts={
FIO: get("ff"),
phone: get("tt")
}
var receiver={
FIO: get("ff2"),
date: get("dd"),
address: get("aa")
}
var payment=get("oo")
var test=function(field, re, name){
return re.test(field.value)
}
if (test(contacts.FIO, /^[A-ZА-Я]{3}[a-zа-я]{4}[A-ZА-Я]+$/, "contactFIO")&&test(receiver.FIO, /^[A-ZА-Я]{3}[a-zа-я]{4}[A-ZА-Я]+$/, "reciverFIO")&&test(receiver.date, /^\d\d:\d\d:201\d \d\d:\d\d$/, "reciverdate")&&test(receiver.address, /^г\. [A-ZА-Я][a-zа-я]+$/, "reciverAddress")&&test(payment, /^\d{16}$/, "payment")) return alert("Верно"); alert("Неверно")
}
</script>
</head>
<body background="images/fonoglavl0.jpg">
<meta name="Microsoft Border" content="t, default">
<form method="GET" name="form1" action="1.htm" >
<p> </p>
<hr>
<p align="center"><b><font color="#33CC33" size="6">Заказ цветов</font></b></p>
<p align="left">
Контакты</p>
<dl>
<dd>
<table>
<tr>
<td>
<p align="left">ФИО</td>
<td>
<p align="left">
<input type="text" size="35" maxlength="256" name="ff" value='' > <span lang="ru"></td>
</tr>
<tr>
<td>
<p align="left">Телефон
</td>
<td>
<p align="left"><input type="text" size="35" name="tt" value=''> <span lang="ru"></td>
</tr>
</table>
<p align="left">
Получатель доставки</p>
<table>
<tr>
<td width="101">
<p align="left">ФИО
</td>
<td>
<p align="left">
<input type="text" size="35" name="ff2" value=''> <span lang="ru"></td>
</tr>
</table>
<table>
<tr>
<td>
<p align="left">Дата
</td>
<td>
<p align="left">
<input type="text" size="35" name="dd" value=''> <span lang="ru"></td>
</tr>
</table>
<table>
<tr>
<td>
<p align="left">Адрес
</td>
<td>
<p align="left">
<input type="text" size="35" name="aa" value=''> <span lang="ru"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<div align="left">
<dt>
Способ оплаты</dt>
</div>
<dd> </dd>
<dd>
<table>
<tr>
<td>
<p align="left">Номер карты </td>
<td>
<p align="left">
<input type="text" size="35" name="oo" value=''> <span lang="ru"></td>
</tr>
</table>
</dd>
</dl>
<p><input type="submit" value="Добавить" name="B1" onClick="proverka()" > <input type="reset" value="C6poc" name="B2"></p>
<p align="left"><a href="def.asp"><font color="#FF0066">
<span style="background-color: #FFFFFF">Работа с БД</span></font></a></p>
</form>
<hr>
</body>
</html>
Последний раз редактировалось krutoy, 03.12.2014 в 05:03.
|
|
03.12.2014, 05:49
|
Профессор
|
|
Регистрация: 09.11.2014
Сообщений: 610
|
|
Rise,
Цитата:
|
krutoy, буква Ёё не проходит и форма отправляется независимо от корректности ввода
|
Вообще-то об этом речи не было. Добавил
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="ru">
<title>Заказ цветов</title>
<script language="JavaScript">
function proverka(){
var form=document.querySelector("form")
var get=function(name){return document.getElementsByName(name)[0]}
var contacts={
FIO: get("ff"),
phone: get("tt")
}
var receiver={
FIO: get("ff2"),
date: get("dd"),
address: get("aa")
}
var payment=get("oo")
var test=function(field, re, name){
return re.test(field.value)
}
if (test(contacts.FIO, /^[A-ZА-ЯЁ]{3}[a-zа-яё]{4}[A-ZА-ЯЁ]+$/, "contactFIO")&&test(receiver.FIO, /^[A-ZА-ЯЁ]{3}[a-zа-яё]{4}[A-ZА-ЯЁ]+$/, "reciverFIO")&&test(receiver.date, /^\d\d:\d\d:201\d \d\d:\d\d$/, "reciverdate")&&test(receiver.address, /^г\. [A-ZА-ЯЁ][a-zа-яё]+$/, "reciverAddress")&&test(payment, /^\d{16}$/, "payment")) {alert("Верно"); form.submit(); return;}; alert("Неверно")
}
</script>
</head>
<body background="images/fonoglavl0.jpg">
<meta name="Microsoft Border" content="t, default">
<form method="GET" name="form1" action="1.htm" >
<p> </p>
<hr>
<p align="center"><b><font color="#33CC33" size="6">Заказ цветов</font></b></p>
<p align="left">
Контакты</p>
<dl>
<dd>
<table>
<tr>
<td>
<p align="left">ФИО</td>
<td>
<p align="left">
<input type="text" size="35" maxlength="256" name="ff" value='' > <span lang="ru"></td>
</tr>
<tr>
<td>
<p align="left">Телефон
</td>
<td>
<p align="left"><input type="text" size="35" name="tt" value=''> <span lang="ru"></td>
</tr>
</table>
<p align="left">
Получатель доставки</p>
<table>
<tr>
<td width="101">
<p align="left">ФИО
</td>
<td>
<p align="left">
<input type="text" size="35" name="ff2" value=''> <span lang="ru"></td>
</tr>
</table>
<table>
<tr>
<td>
<p align="left">Дата
</td>
<td>
<p align="left">
<input type="text" size="35" name="dd" value=''> <span lang="ru"></td>
</tr>
</table>
<table>
<tr>
<td>
<p align="left">Адрес
</td>
<td>
<p align="left">
<input type="text" size="35" name="aa" value=''> <span lang="ru"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<div align="left">
<dt>
Способ оплаты</dt>
</div>
<dd> </dd>
<dd>
<table>
<tr>
<td>
<p align="left">Номер карты </td>
<td>
<p align="left">
<input type="text" size="35" name="oo" value=''> <span lang="ru"></td>
</tr>
</table>
</dd>
</dl>
<p><input type="button" value="Добавить" name="B1" onClick="proverka()" > <input type="reset" value="C6poc" name="B2"></p>
<p align="left"><a href="def.asp"><font color="#FF0066">
<span style="background-color: #FFFFFF">Работа с БД</span></font></a></p>
</form>
<hr>
</body>
</html>
Последний раз редактировалось krutoy, 03.12.2014 в 06:02.
|
|
03.12.2014, 05:56
|
Профессор
|
|
Регистрация: 09.11.2014
Сообщений: 610
|
|
Сообщение от Rise
|
ну и дата (ЧЧ:ММ:ГГГГ ЧЧ:ММ) числа 01-31, месяц 01-12, часы 00-23, минуты 00-59, а не любые числа.
|
С этим мне неохота трахаться. Может тсу не надо это.
|
|
03.12.2014, 06:08
|
Профессор
|
|
Регистрация: 09.11.2014
Сообщений: 610
|
|
Rise,
Я тестил с ним, лень убирать, он не мешает, х с ним.
|
|
03.12.2014, 12:32
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Ебать тут лохи собрались. Не судьба регулярки положить в атрибут pattern?
__________________
В личку только с интересными предложениями
|
|
|
|