Добро пожаловать, Гость. Пожалуйста, выберите Вход или Регистрация
Привет.лв Главная Справка Поиск Вход Регистрация
Страниц: 1
Печать Bookmark and Share
Удалить этот блок рекламы?
Удали рекламу
Небольшая помощь с Java Script'ом (Прочитано 4676 раз)
Maestro
Никем не отмечен
*
Вне Форума



Сообщений: 3
D-pils
Пол: male
Небольшая помощь с Java Script'ом
03.01.2007 :: 14:56:33
 
Задача такова.
Просмотр медиа-файлов и переход по ссылкам доступен только для Участников Форума!  Вы нуждаетесь в Вход или Регистрация!!

Вот что у меня получилось в итоге Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=windows-1251">
<STYLE>
body  { font-family: 'Times New Roman'; font-size: 16px}
</STYLE>
<script type='text/javascript'>
function checkForm(obj, elems)
{
var element, pattern;
 for (var i = 0; i < obj.elements.length; i++)
{
element = obj.elements[i];
if (elems != undefined)
if (elems.join().indexOf(element.type) < 0) continue;
if (!element.getAttribute("check_message")) continue;
if (pattern = element.getAttribute("check_pattern")) {
pattern = new RegExp(pattern, "g");
if (!pattern.test(element.value)) {
alert(element.getAttribute("check_message"));
 element.focus();
return false;			}		  }
else if(/^\s*$/.test(element.value)) {
element.focus();
return false;		  }	    }
return true;	}
</script>
</HEAD>
<BODY>
<P align=center><FONT color=blue>Бланк заказа</P>
<DIV align=center>
<table border="1">
<tr>
 <th><font color="blue">Название товара</font></th>
 <th><font color="blue">Цена, $</font></th>
 <th><font color="blue">Поле заказа</font></th>
 <th><font color="blue">Количество</font></th>
</tr>

<tr>
 <td><font color="blue">SW - 100</font></td>
 <td><font color="blue">27.50</font></td>
 <td align=center><font color="blue"><input type=checkbox name=checkbox></font></td>
 <td align=center><font color="blue"><INPUT maxLength=5 size=3 name=f1></font></td>
</tr>


<tr>
 <td><font color="blue">SW - 300</font></td>
 <td><font color="blue">50.00</font></td>
 <td align=center><font color="blue"><input type=checkbox name=checkbox></font></td>
 <td align=center><font color="blue"><INPUT maxLength=5 size=3 name=f2></font></td>
</tr>


<tr>
 <td><font color="blue">SW - 310</font></td>
 <td><font color="blue">60.00</font></td>
 <td align=center><font color="blue"><input type=checkbox name=checkbox></font></td>
 <td align=center><font color="blue"><INPUT maxLength=5 size=3 name=f3></font></td>
</tr>

<tr>
 <td><font color="blue">SW - 350</font></td>
 <td><font color="blue">74.50</font></td>
 <td align=center><font color="blue"><input type=checkbox name=checkbox></font></td>
 <td align=center><font color="blue"><INPUT maxLength=5 size=3 name=f4></font></td>
</tr>
</table>
<p>Стоимость вашего заказа &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n
bsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs
p;&nbsp;&nbsp;&nbsp;<INPUT maxLength=5 size=10 name=f5><b>$</b></p>
<form method="GET" action='script.htm' onSubmit='return checkForm(this)' name="form1">

 <legend>Для исполнения вашего заказа необходима следующая информация</legend>
<TABLE>
  <TR>
    <TD><B>Имя:</B></TD>
    <TD><INPUT maxLength=20 size=30 name=fname></TD>
    <TD><B>Фамилия:</B></TD>
    <TD><INPUT maxLength=20 size=30 name=fsurname></TD>
    <TD><B>e-mail:</B></TD>
    <TD><INPUT maxLength=20 size=30 name=fmail check_pattern="^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$" check_message="Мыло !!!"><font color="red">*</font></TD></TR>
  <TR>
    <TD><B>Город:</B></TD>
    <TD><INPUT maxLength=20 size=30 name=fcity></TD>
    <TD><B>Почтовое отделение:</B></TD>
    <TD><INPUT maxLength=20 size=15 name=fcmail></TD>
    <TD><B>Адрес доставки:</B></TD>
    <TD><INPUT maxLength=20 size=60 name=fadres></TD></TR>
  <TR>
    <TD><B>Контактный телефон:</B></TD>
    <TD><INPUT maxLength=15 name=ftel check_pattern="^[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]{0,9}$" check_message="Контактный телефон !!!"><font color=red>*</font></TD>
    <TD><B>ID менеджера:</B></TD>
    <TD><INPUT maxLength=10 name=fmen check_pattern="^[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[a-zA-Z]{0,9}$" check_message="Менеджер!!!!!!!!!"><font color=red>*</font></TD>
    <TD><B>Пароль:</B></TD>
    <TD><INPUT type="password" maxLength=20 name=fpass check_pattern="^[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[\w-]+[a-zA-Z]{0,9}$" check_message="пароль!!!!!!!!!!"><font color=red>*</font></TD></TR>
</TABLE>
<p align=center>Прежде чем отправить заказ, внимательно проверьте заполнение полей<br>
Необходимо правильно заполнить все поля</p>
  <p align=center>
<INPUT style="WIDTH:80px" type=reset value="Очистить">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp
  <INPUT style="WIDTH: 80px" type=submit    value="Отправить">
  </p>
</fotm>
</FONT>
</BODY>
</HTML> 

Но (!) одну вещь никак не могу сделать, ну не помню я как делать это.
А именно - "В поле стоимости заказа автоматически выводится сумма заказа по всем позициям товаров. Если товар не был заказан, но была нажата кнопка «Отправить», выдать сообщение, что товар не был выбран."
Наверх
 
« Последняя редакция: 03.01.2007 :: 16:07:01 от Ramzies »  

Просмотр медиа-файлов и переход по ссылкам доступен только для Участников Форума!  Вы нуждаетесь в Вход или Регистрация!!
  IP записан
Ramzies
Администратор
*****
Вне Форума

Все что случается
имеет причину.

Сообщений: 2632
Даугавпилс, Валмиера.
Пол: male
Re: Небольшая помощь с Java Script'ом
Ответ #1 - 03.01.2007 :: 16:34:07
 
А ты сам тестил свой скрипт ? Улыбка Он ведь у тебя постоянно зацикливается мол заполни ячейку E-mail.
Извини, html разметка и скрипт в целом мне показались ужасными. Я не стал разбираться и написал сам с нуля.
Что касается цены товаров я сделал наброски но его еще нужно доделать. Если завтра будет время сделаю:
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
	<title>Untitled</title>
</head>
<body>
<script type='text/javascript'>
function validForm(forma) {
  var cflag = "";
  var elname = "";
  var res = "";
  var postfix = "";

for (var i = 0; i < document.forma.elements.length; i++) {
  elname = document.forma.elements[i].name;
    elval = document.forma.elements[i].value;

	if ((res = elname) != null) { postfix = res; }
	   if ((postfix == "mail") && (isempty(elval))) { cflag = postfix; }
	   if ((postfix == "pass") && (isempty(elval))) { cflag = postfix; }
	   if ((postfix == "tel") && (isempty(elval))) { cflag = postfix; }
	   if ((postfix == "men") && (isempty(elval))) { cflag = postfix; }
	   if ((postfix == "stoemz") && (isempty(elval))) { cflag = postfix; }

   if (cflag != "") {
    document.forma.elements[i].focus();
	if (cflag == "mail") { alert('Почта'); }
	if (cflag == "pass") { alert('Пароль');  }
	if (cflag == "tel") { alert('Телефон'); }
	if (cflag == "men") { alert('ИД');  }
	if (cflag == "stoemz") { alert('Вы не выбрали товар');  }
	return false;
   }

 }
}
function isempty(cvalue) {
   if (cvalue == "") { return true; } else { return false; }
}
function cena(ls){
buf = document.getElementById('stoemz').value;
 document.getElementById('stoemz').value=Number(buf)+ls;
}
</script>
<style>
.tovar th, .tovar td {color:blue }
</style>
<p align="center" style="color:blue">Бланк заказа</p>
<div align="center">
<form action="skript.html" name="forma" METHOD="POST" onSubmit="return validForm(this)">
<table border="1" class="tovar">
<tr>
 <th>Название товара</th>
 <th>Цена, $</th>
 <th>Поле заказа</th>
 <th>Количество</th>
</tr>
<tr>
 <td>SW - 100</td>
 <td>27.50</td>
 <td align="center"><input type="checkbox" name="checkbox" onClick="cena(27.50);"></td>
 <td align="center"><input maxLength="5" size="3" name="f1"></td>
</tr>
<tr>
 <td>SW - 300</td>
 <td>50.00</td>
 <td align="center"><input type="checkbox" name="checkbox" onClick="cena(50.00);"></td>
 <td align="center"><input maxLength="5" size="3" name="f2"></td>
</tr>
<tr>
 <td>SW - 310</td>
 <td>60.00</td>
 <td align="center"><input type="checkbox" name="checkbox" onClick="cena(60.00);"></td>
 <td align="center"><input maxLength="5" size="3" name="f3"></td>
</tr>
<tr>
 <td>SW - 350</td>
 <td>74.50</td>
 <td align="center"><input type="checkbox" name="checkbox" onClick="cena(74.50);"></td>
 <td align="center"><input maxLength="5" size="3" name="f4"></td>
</tr>
</table>
<p>Стоимость вашего заказа <input maxLength="5" size="10" name="stoemz" id="stoemz"><b>$</b></p>
 <legend>Для исполнения вашего заказа необходима следующая информация</legend>
<TABLE>
  <TR>
    <TD><B>Имя:</B></TD>
    <TD><input maxLength="20" size="30" name="name"></TD>
    <TD><B>Фамилия:</B></TD>
    <TD><input maxLength="20" size="30" name="surname"></TD>
    <TD><B>e-mail:</B></TD>
    <TD><input maxLength="20" size="30" name="mail"><font color="red">*</font></TD></TR>
  <TR>
    <TD><B>Город:</B></TD>
    <TD><input maxLength="20" size="30" name="city"></TD>
    <TD><B>Почтовое отделение:</B></TD>
    <TD><input maxLength="20" size="15" name="messahel"></TD>
    <TD><B>Адрес доставки:</B></TD>
    <TD><input maxLength="20" size="60" name="adres"></TD></TR>
  <TR>
    <TD><B>Контактный телефон:</B></TD>
    <TD><input maxLength="15" name="tel"><font color="red">*</font></TD>
    <TD><B>ID менеджера:</B></TD>
    <TD><input maxLength="10" name="men"><font color="red">*</font></TD>
    <TD><B>Пароль:</B></TD>
    <TD><input type="password" maxLength="20" name="pass"><font color=red>*</font></TD></TR>
</TABLE>
<p align=center>Прежде чем отправить заказ, внимательно проверьте заполнение полей<br>
Необходимо правильно заполнить все поля</p>
<p align=center>
<input style="WIDTH:80px" type="reset" value="Очистить">
<input style="WIDTH: 80px" type="submit"  value="Отправить">
</p>
</fotm>
</font>
</body>
</html> 

Наверх
 
 

Просмотр медиа-файлов и переход по ссылкам доступен только для Участников Форума!  Вы нуждаетесь в Вход или Регистрация!!
Научись говорить, что ты _х_о_ч_е_ш_ь, вместо точго, чего ты _н_е_ _х_о_ч_е_ш_ь...
WWW Ramzies renat2985   IP записан
Maestro
Никем не отмечен
*
Вне Форума



Сообщений: 3
D-pils
Пол: male
Re: Небольшая помощь с Java Script'ом
Ответ #2 - 04.01.2007 :: 09:41:31
 
Он не зацикливается, просто не пускает дальше, пока не заполнишь форму как надо. Он не пускает если не заполнишь мыло так как полагается (ваше_имя@адрес.зона(lv, com i t.d.) - типа так), также и с остальными. Хотя твой скрипт лучше, признаю, но что поделать, писалось все на коленке и потом не оптимизировалось.
Наверх
 
 

Просмотр медиа-файлов и переход по ссылкам доступен только для Участников Форума!  Вы нуждаетесь в Вход или Регистрация!!
  IP записан
Страниц: 1
Печать Bookmark and Share
www.privet.lv

Privet.lv/forum » Powered by YaBB 2.2.3 (fix)!
YaBB © 2000-2012. Все права защищены.
Valid RSS Valid XHTML Valid CSS Powered by Perl Source Forge