помогите ламеру

Статус
Закрыто для дальнейших ответов.

inisiaru

Новичок
Регистрация
27.03.2009
Сообщения
1
Добрый день! Четыре года назад с подобным сама помогала, а сейчас все позабывала. Писать на javaScript это не как на велосипеде кататься забыла совсем все
:blush:
У меня есть две формы, в одной посетителю прелагаеться сделать выбор и приэтом подсчитываеться ссума того что он выбрал, своего рода калькулятор(калькулятор из сети взяла, работает только под ИЕ, этого достаточно). Вторая форма - это форма обратной связи с необходимыми полями, в котором меня интересует только поле textarea. Что требуеться: чтобы выбранные поля первой формы и общая ссума втсавлялись в поле textarea второй формы. при заходе на траницу пользователь видит только первую форму, при нажатии на кнопку заказать в поле textarea вставляются необходимые данные и показываеться вторая форма, а первая при этом прячется.
Помогите пожалуйста!!!!
Ниже привожу код страницы со всевозможными моими "косяками"

[codebox]<body onload=Calculate()>
<script language=javascript>
var priceResult = 0;
var price = 0;
var discaunt = 15;
var typeizd = new Array("Ворота откатные");

var HeightRussia = new Array (1500, 1750, 2000, 2250, 2500, 2750, 3000);
var WidthRussia = new Array (3000, 3250, 3500, 3750, 4000, 4250, 4500, 4750, 5000, 5250, 5500, 5750, 6000);
var PricesRussia = new Array (480, 490, 740, 750, 761, 774, 784, 490, 502, 750, 761, 775, 785, 800, 502, 515, 761, 775, 785, 800, 810, 800, 806, 819, 831, 845, 856, 868, 806, 820, 831, 845, 856, 868, 880, 820, 831, 845, 856, 868, 880, 892, 831, 845, 856, 868, 880, 895, 905, 888, 901, 915, 930, 940, 950, 962, 901, 915, 930, 940, 1368, 1380, 1395, 960, 972, 985, 1440, 1450, 1465, 1478, 972, 985, 1440, 1450, 1463, 1580, 1657, 1030, 1041, 1520, 1531, 1580, 1657, 1670, 1041, 1530, 1631, 1645, 1657, 1670, 1681);

var c_PRICE = 0;
var c_SQUARE = 1;
var c_PERCENT = 2;

var options = new Array(new Array(1,"Ro 1124",360,c_PRICE),
new Array(2,"RB KCE. 24В, интенсивность 50%, скорость до 0,35м/с, автоматическое определение препятствий, автоматическое увеличение усилия в холодную погоду, система BlueBUS. Вес до 350кг.",375,c_PRICE),
new Array(3,"RB 1000",400,c_PRICE), new Array(4,"RB 600. 24В, интенсивность 40%, скорость до 0,3м/с, автоматическое определение препятствий, автоматическое увеличение усилия в холодную погоду, система BlueBUS. Вес до 600кг.",316,c_PRICE),
new Array(5,"Run 1800",500,c_PRICE), new Array(6,"Модель SF 1200. Мax вес ворот - 230 кг, рейка - 2,2/2,5/3,2/3,34/3,7 м, в комплекте с ДУ и 4-х канальными пультами – 2 шт.",296,c_PRICE),
new Array(7,"Пульт одноканальный",25,c_PRICE),
new Array(8,"Cигнальная лампа",35,c_PRICE),
new Array(9,"Доставка по Москве",70,c_PRICE),
new Array(10,"Монтаж ворот",120,c_PRICE),
new Array(11,"В пределах 1го бетонного кольца",70,c_PRICE),
new Array(12,"Фотоэлементы проводные",45,c_PRICE),
new Array(13,"Фотоэлементы беспроводные (Blue Bus)",80,c_PRICE),
new Array(14,"Пульт четырехканальный",31,c_PRICE),
new Array(15,"Монтаж электроприводов",120,c_PRICE),
new Array(17,"В пределах 2го бетонного кольца",100,c_PRICE),
new Array(16,"Монтаж фотоэлементов",60,c_PRICE));

var BeginAdd=1;
var EndAdd = 17;

function sel()
{
document.getElementById("txtWidth").options.length=0;
document.getElementById("txtHeight").options.length=0;
if (document.getElementById("typepr").value==1)
{
for (i=0;i<WidthRussia.length;i++)
{
document.getElementById("txtWidth").options.length++;
document.getElementById("txtWidth").options.value=i;
document.getElementById("txtWidth").options.text=WidthRussia;
}
for (i=0;i<HeightRussia.length;i++)
{
document.getElementById("txtHeight").options.length++;
document.getElementById("txtHeight").options.value=i;
document.getElementById("txtHeight").options.text=HeightRussia;
}
}
else
{
document.getElementById("txtWidth").options.length=0;
document.getElementById("txtHeight").options.length=0;
for (i=0;i<WidthImport.length;i++)
{
document.getElementById("txtWidth").options.length++;
document.getElementById("txtWidth").options.value=i;
document.getElementById("txtWidth").options.text=WidthImport;
}
for (i=0;i<HeightImport.length;i++)
{
document.getElementById("txtHeight").options.length++;
document.getElementById("txtHeight").options.value=i;
document.getElementById("txtHeight").options.text=HeightImport;
}
}
document.getElementById("txtWidth").index;
document.getElementById("txtHeight").index;

Calculate();
}

function Calculate()
{
// убираем сообщение
document.getElementById("message").innerHTML = "";

var widthSearch = Math.round(document.getElementById("txtWidth").value);
var heightSearch = Math.round(document.getElementById("txtHeight").value);
var t = Math.round(document.getElementById("typepr").value);
var width_ar = new Array();
var height_ar = new Array();
var prices_ar = new Array();

if (t==1)
{
width_ar = WidthRussia;
height_ar = HeightRussia;
prices_ar = PricesRussia;
}
else
{
width_ar = WidthImport;
height_ar = HeightImport;
prices_ar = PricesImport;
}
document.getElementById("typeprh").value = Math.round(t);
document.getElementById("typeizdh").value = typeizd[t-1];

priceResult = 0;
price = 0;

// определяем размеры
var height = height_ar[Math.round(document.getElementById("txtHeight").value)];
var width = width_ar[Math.round(document.getElementById("txtWidth").value)];
var pr = prices_ar[Math.round(width_ar.length)*Math.round(document.getElementById("txtHeight").value)+Math.round(document.getElementById("txtWidth").value)];

document.getElementById("widthh").value = Math.round(width);
document.getElementById("heighth").value = Math.round(height);

price = Math.round(pr);
priceResult = price;

var square = height * width / 1000000;
var weigh = square * 17;


// проверяем опции
var optionsstr="";

for (i = 0; i < options.length; i++)
{
var value=0;
var id = options[0];
if (document.getElementById("chk" + id) != null && document.getElementById("chk" + id).checked)
{
optionsstr += options[1] +"<br>";
if (options[3]==c_PRICE)
value=Math.round(options[2]);
if (options[3]==c_SQUARE)
if ((id==23) && (square > 8))
value = Math.ceil((Math.ceil(square-8)*Math.ceil(options[id-1][2]))+Math.ceil(options[20][2]));
if ((options[3]==c_PERCENT) && (id != 25))
value = Math.round(price*options[2]/100);

if (document.getElementById("chk25") != null && document.getElementById("chk25").checked)
{
if ((id>=BeginAdd) && (id<=EndAdd))
value = value + Math.round(value * options[24][2]/100);
}
priceResult +=Math.round(value);
}
}
document.getElementById("weigh").innerHTML = Math.ceil(weigh);
document.getElementById("square").innerHTML = Math.ceil(square);
document.getElementById("resultx").innerHTML = Math.ceil(priceResult);
document.getElementById("summah").value = Math.ceil(priceResult);
document.getElementById("discaunth").value = discaunt;
document.getElementById("resultdiscauntx").innerHTML = Math.ceil(priceResult*((100+discaunt)/100));
document.getElementById("optionsh").value = optionsstr;
}
// ====================================================
// переходим на страницу заказа
function Order(button)
{
Calculate();

if (priceResult == 0 || price == 0)
{
document.getElementById("message").innerHTML = "Сумма заказа должна быть больше 0";
return false;
}
// здесь Переход на страницу заказа!!!!!!!!!!!!!!!!!
};
// ===================================================
// устанавливает картинку
function SetImage(imgFileName)
{
document.getElementById("img").src = "http://nartex.ru/img/" + imgFileName;
}

function zakaz() {
var pastPrise = document.getElementById("calculPast");

var calculPast = pastPrise.childNodes[0];
var height = height_ar[Math.round(document.getElementById("txtHeight").value)];
var width = width_ar[Math.round(document.getElementById("txtWidth").value)];
var textW = Math.round(width);
var textH = Math.round(height);
var newWH = document.createTextNode(textW + 'x' + textH + '<br>');
calculPast.appendChild(newWH);

var calculPast2 = pastPrise.childNodes[0];
var optionsstr="";

for (i = 0; i < options.length; i++)
{
var value=0;
var id = options[0];
if (document.getElementById("chk" + id) != null && document.getElementById("chk" + id).checked)
{
optionsstr += options[1] +"<br>";
if (options[3]==c_PRICE)
value=Math.round(options[2]);
if (options[3]==c_SQUARE)
if ((id==23) && (square > 8))
value = Math.ceil((Math.ceil(square-8)*Math.ceil(options[id-1][2]))+Math.ceil(options[20][2]));
if ((options[3]==c_PERCENT) && (id != 25))
value = Math.round(price*options[2]/100);

if (document.getElementById("chk25") != null && document.getElementById("chk25").checked)
{
if ((id>=BeginAdd) && (id<=EndAdd))
value = value + Math.round(value * options[24][2]/100);
}
priceResult +=Math.round(value);
}
}

var checbox = optionsstr;
var newText = document.createTextNode(checbox + '<br>');
calculPast.appendChild(newText);

calculPast.style.display = 'block';

}

</SCRIPT>



<SPAN id=message
style="DISPLAY: block; FONT-WEIGHT: bold; PADDING-BOTTOM: 0px; COLOR: red"></SPAN>
<FORM id=form action="" onSubmit="zakaz(); return false;" method=post>
<table width="100%" border="1">
<tr>
<td class="tahoma" colspan="2" align="right" height="100%">
<h1 align="center">Ворота откатные</h1>
<img border="0" src="images/vorota.jpg" width="234" height="147" style="float:left; margin:7px 10px 5px 5px; " align="left">
<table width="60%">
<tr>
<td colspan="2"><select name=typepr id=typepr size="1" onChange=sel() class="tahoma">
<option value="1" selected>Рама ворот</option>
<!-- <option value="2">Промышленные ворота</option>-->
</select>
<input type="hidden" name="typeprh" id="typeprh" value="">
<input type="hidden" name="typeizdh" id="typeizdh" value="">
</td>
</tr>
<tr>
<td class="tahoma"><b>Ширина</b> </td>
<td align=center class="tahoma"><select class=input name="txtWidth" id="txtWidth" size="1" onChange=Calculate()>
<option value="0" selected>3000</option>
<option value="1" >3250</option>
<option value="2" >3500</option>
<option value="3" >3750</option>
<option value="4" >4000</option>
<option value="5" >4250</option>
<option value="6" >4500</option>
<option value="7" >4750</option>
<option value="8" >5000</option>
<option value="9">5250</option>
<option value="10">5500</option>
<option value="11">5750</option>
<option value="12">6000</option>
</select>
&nbsp;мм.
<input type="hidden" name="widthh" id="widthh" value="">
</td>
</tr>
<tr onMouseOver="SetImage('height.gif')" onMouseOut="SetImage('vorota.gif')">
<td width=150 class="tahoma"><b>Высота</b></td>
<td align=center class="tahoma"><select class=input name="txtHeight" id="txtHeight" size="1" onChange=Calculate()>
<option value="0" selected>1500</option>
<option value="1" >1750</option>
<option value="2" >2000</option>
<option value="3" >2250</option>
<option value="4" >2500</option>
<option value="5" >2750</option>
<option value="6" >3000</option>
</select>
&nbsp;мм.
<input type="hidden" name="heighth" id="heighth" value="">
</td>
</tr>
<tr>
<td colspan="2" class="tahoma"><div style="visibility:hidden; display:none;">Приблизительный вес - <font color="#C60210"><b> <span id=weigh>0</span></b></font>&nbsp;кг</div>
<div style="display:none;">Примерная площадь - <b> <font color="#C60210"> <span id=square>0</span></font></b>&nbsp;м<sup>2</sup></div></td>
</tr>
<tr>
<td class="verdana5" colspan="2" align="center"><b> <font size="3">Стоимость:
<!-- <font color="#C60210"> <SPAN id="resultdiscauntx">0</SPAN></font>
у.е. (со скидкой -->
<span id="resultx">0</span> у.е.
<!--)-->
</font></b><font size="3">
<input type="hidden" name="summah" id="summah" style="font-weight: 700">
<input type="hidden" name="discaunth" id="discaunth" style="font-weight: 700">
<input type="hidden" name="optionsh" style="font-weight: 700">
</font> </td>
</tr>
</table>
<br ><br><br>
</td>
</tr>
<tr>
<td width="50%" rowspan="2"><table border="0" width="93%" id="table14" class="tahoma">
<tr>
<td colspan="3" height="20"><b>Выбор привода.</b></td>
</tr>
<tr>
<td colspan="2"><b>Nice</b></td>
<td>&nbsp;</td>
</tr>
<tr>
<td height="9" ><b>RB KCE</b>. 24В, интенсивность 50%, скорость до 0,35м/с, автоматическое определение препятствий, автоматическое увеличение усилия в холодную погоду, система BlueBUS. Вес до 350кг.</td>
<td height="9" width="5%" align="center"><input type=checkbox name=chk2 onClick=Calculate()>
</td>
<td height="18" width="11%">+ 375 у.е.</td>
</tr>
<tr>
<td height="18" ><b>Ro 1124</b>24В, интенсивность 80%, скорость 0,2м/с. Вес до 400кг.</td>
<td height="9" width="5%" align="center"><input type=checkbox name=chk1 onClick=Calculate()>
</td>
<td height="18" width="11%">+ 360у.е.</td>
</tr>
<tr>
<td height="9" ><b>RB 600</b>. 24В, интенсивность 40%, скорость до 0,3м/с, автоматическое определение препятствий, автоматическое увеличение усилия в холодную погоду, система BlueBUS. Вес до 600кг.</td>
<td height="9" width="5%" align="center"><input type=checkbox name=chk4 onClick=Calculate()>
</td>
<td height="18" width="11%">+ 316 у.е.</td>
</tr>
<tr>
<td height="18" ><b>RB 1000</b>24В, интенсивность 70%, скорость до 0,28м/с, автоматическое определение препятствий, автоматическое увеличение усилия в холодную погоду, система BlueBUS. Вес до 1000кг.</td>
<td height="9" width="5%" align="center"><input type=checkbox name=chk3 onClick=Calculate()>
</td>
<td height="18" width="11%">+ 400 у.е.</td>
</tr>
<tr>
<td height="18" ><b>Run 1800</b>230В, интенсивность 50%, скорость 0,16 м/с,
охлаждение двигателя, автоматическое определение препятствий, автоматическое увеличение усилия в холодную погоду,BlueBUS. Вес до 1800кг.</td>
<td height="9" width="5%" align="center"><input type=checkbox name=chk5 onClick=Calculate()>
</td>
<td height="18" width="11%">+ 500 у.е.</td>
</tr>
</table></td>
<td width="50%" valign="top"><table width="100%">
<tr>
<td colspan="3"><b>Дополнительное оборудование в составе ворот</b></td>
</tr>
<tr>
<td height="22" >Пульт одноканальный</td>
<td height="22" width="5%" align="center"><input type=checkbox name=chk7 onClick=Calculate()></td>
<td height="22" width="11%">+ 25 у.е</td>
</tr>
<tr>
<td height="22" >Cигнальная лампа</td>
<td height="22" width="5%" align="center"><input type=checkbox name=chk8 onClick=Calculate()></td>
<td height="22" width="11%">+ 35 у.е.</td>
</tr>
<tr>
<td height="22" >Фотоэлементы проводные </td>
<td height="22" width="5%" align="center"><input type=checkbox name=chk12 onClick=Calculate()></td>
<td height="22" width="11%">+ 45 у.е</td>
</tr>
<tr>
<td height="22" >Фотоэлементы беспроводные (Blue Bus)</td>
<td height="22" width="5%" align="center"><input type=checkbox name=chk13 onClick=Calculate()></td>
<td height="22" width="11%">+ 80 у.е.</td>
</tr>
<tr>
<td height="22" >Пульт четырехканальный</td>
<td height="22" width="5%" align="center"><input type=checkbox name=chk14 onClick=Calculate()></td>
<td height="22" width="11%">+ 31 у.е</td>
</tr>
</table></td>
</tr>
<tr>
<td><table width="100%">
<tr>
<td colspan="3"><b>Услуги</b></td>
</tr>
<tr>
<td height="18" >Доставка по Москве</td>
<td height="18" width="5%" align="center"><input type=checkbox name=chk9 onClick=Calculate()></td>
<td height="18" width="11%">70 у.е.</td>
</tr>
<tr>
<td height="18" >Монтаж ворот</td>
<td height="18" width="5%" align="center"><input type=checkbox name=chk10 onClick=Calculate()></td>
<td height="18" width="11%">+ 120 у.е.</td>
</tr>
<tr>
<td height="18" > В пределах 1го бетонного кольца</td>
<td height="18" width="5%" align="center"><input type=checkbox name=chk11 onClick=Calculate()></td>
<td height="18" width="11%">70 у.е.</td>
</tr>
<tr>
<td height="18" >Монтаж электроприводов</td>
<td height="18" width="5%" align="center"><input type=checkbox name=chk15 onClick=Calculate()></td>
<td height="18" width="11%">120 у.е.</td>
</tr>
<tr>
<td height="18" > В пределах 2го бетонного кольца</td>
<td height="18" width="5%" align="center"><input type=checkbox name=chk17 onClick=Calculate()></td>
<td height="18" width="11%">100 у.е.</td>
</tr>
<tr>
<td height="18" >Монтаж фотоэлементов</td>
<td height="18" width="5%" align="center"><input type=checkbox name=chk16 onClick=Calculate()></td>
<td height="18" width="11%">60 у.е.</td>
</tr>
<tr>
<td colspan="3">Далее 2го бетонного кольца - 1у.е. за км квадратн</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table></td>
</tr>
<tr>
<td colspan="2" align="center"><input class=button onClick="return Order();" type=submit value=Заказать name=handlerBtnOrder>
<p align="left" style="margin-left:5px;">Более подробная информация у вашего консультанта по тел. 972-89-19</p>
</td>
</tr>
</table>
</FORM>



<!--{title=Обратная Связь}-->
<table cellspacing=0 cellpadding=10 width="100%" border=0 style=" display:none;" id="formSend">
<tbody>
<tr>
<td><script language="javascript">
<!--
function validate_form(cform)
{

if(cform.firstname.value.length<1){
alert("Пожалуйста, введите имя!");
cform.firstname.focus();
return false;
}

if(cform.lastname.value.length<1){
alert("Пожалуйста, введите фамилию!");
cform.lastname.focus();
return false;
}

if(cform.email.value.length<1){
alert("Пожалуйста, введите Адрес E-mail!");
cform.email.focus();
return false;
} else if(isEmail(cform.email.value) == false) {
alert('Пожалуйста, введите правильный Адрес E-mail!');
cform.email.focus();
return false;
}

if(cform.info.value.length<1){
alert("Пожалуйста, введите Вопрос!");
cform.info.focus();
return false;
}

var form = cform;


form.protected_field.value = 1977;

return true;
}
//-->
</script>
<form name = "contact" action="pages.php" method="post" onSubmit="java script:return validate_form(this);">
<input type=hidden name=modlink value="page20088">
<input type="hidden" name="action" value="add">
<table border="0">
<tr>
<td width="200">Имя: <sup><strong>*</strong></sup> </td>
<td width="200"><input type="text" class=txt name="firstname" value="" size="19"></td>
</tr>
<tr>
<td width="200">Фамилия: <sup><strong>*</strong></sup> </td>
<td width="200"><input type="text" class=txt name="lastname" value="" size="19"></td>
</tr>
<tr>
<td>Адрес E-mail: <sup><strong>*</strong></sup> </td>
<td><input type="text" class=txt name="email" value="" size="29"></td>
</tr>
<tr>
<td>Телефон (дом, работа, мобильный):</td>
<td><input type="text" class=txt name="phone" value="" size="19"></td>
</tr>
<tr>
<td width="200">Адрес 1:</td>
<td width="200"><input type="text" class=txt name="address1" value="" size="29"></td>
</tr>
<tr>
<td width="200">Адрес 2:</td>
<td width="200"><input type="text" class=txt name="address2" value="" size="29"></td>
</tr>
<tr>
<td>Город:</td>
<td><input type="text" name="city" class=txt value="" size="19"></td>
</tr>
<tr>
<td>Страна:</td>
<td><select name="country">
</select>
</td>
</tr>
<tr>
<td colspan="2" ><h3>Пожалуйста укажите какого рода информация вас интересует: <sup><strong>*</strong></sup> </h3>
<textarea name="info" class=ta wrap=soft cols="69" rows="8" id="calculPast"></textarea>
</td>
</tr>
<tr>
<td colspan="4"><script language="JavaScript" type="text/javascript">
<!--
document.write ('<' + 'input type="hidden" name="protected_field" value="" />');
-->
</script>
</td>
</tr>
</table>
<p><sub>* Обязательные поля</sub></p>
<br>
<br>
<input name="submit" type="submit" class=btn value=" Отправить ">
<input name="reset" type="reset" class=btn value=" Очистить поля ">
</form></td>
</tr>
</tbody>
</table>
</td>
</tr>
</table>
</body>[/codebox]
 
Статус
Закрыто для дальнейших ответов.
Верх Низ