Тема: JS+HTA:форма в цикле JS=?
Подскажите в коде HTA в цикле можно ли внедрить форму для считывания данных вводимых пользователем?
Ум неясен по причине болезни - сильно не пинайте, вот примерный антишедевр накидал...
Задача: автоматизировать расчет центра тяжести вагона, кол-во грузов от 1 до n различной массы и высотой.
Решение:
для упрощения кода спрашиваем кол-во мест у пользователя,
далее организовываем в цикле считывание информации - массу груза и высоту центра тяжести каждого из грузов,
далее заносим данные в массивы и производим окончательный расчет.
выводим пользователю картинку (хотя можно и сразу при начале работы программы) и расчетные данные.
Особеннности: расчет приближенный в виду размещения груза в линию, гна самом деле возможны отклонения - т.е. грузы могут в продольном сечениии платформы иногда накладываться на линии, но такой вариант крайне редок, поэтому считаем, что груз распологается последовательно в одном направлении.
примерный код хта:
<HTML>
<HEAD>
<TITLE>Программа расчета центра тяжести вагона</TITLE>
<HTA:APPLICATION ID="PKOHTA" APPLICATIONNAME="pko1HTA" BORDER=”” CAPTION="yes" ICON="pko1.ico"
SHOWINTASKBAR="no" SINGLEINSTANCE="yes" SYSMENU="yes" WINDOWSTATE="normal" >
<script src="funktions1.js" type="text/javascript"></script>
</HEAD>
<BODY BGCOLOR="ButtonFace" SCROLL="auto">
<BR>
расчетная программа:
<BR>
<form name="r01">
Введите кол-во мест (число от 1 до 100 включительно)
<input type=text name="n1" value="до 3 цифр" maxlength=3 onchange="validate(this, 1, 100)">
<br>
<input type=button name="Reset" value="Сбросить" OnClick='javascript:reset ()'>
<input type=button name="go" value="Начать расчет" OnClick='javascript:text=r1 ("n1")'>
</form>
</BODY>
</HTML>примерный код с ошибками js:
//----------------------------------------------------------------------------- 0 -----------------------
// функция проверки по введенному числу
function validate(obj, low, high) {
var error1='';
if ((obj.value < low) || (obj.value > high))
{alert("Введено недопустимое значение!"); window.error1='0';}
else {window.error1='1';}
return error1;
}
//основная программа расчета
function r1 (n1) {
//alert("проводим расчет т.к. error1=" + error1);
if (error1==0)
{alert("error1. programm end")}
else {
var m1=document.forms["r01"].n1.value;
//alert("кол-во мест = "+m1);
var q = hg = hc = new Array();
//введем через форму и цикл данные в массивы;
var i=0; do
{
var name1 = 'loads'+i;
form_loads (name1);
q[i]=a1; hg[i]=a2; hc[i]=a3;// данные из формы;
}
while (i < m1);
//расчет
//вывод данных
}
}
function form_loads (name1) {
var t1= "<form name=name1>";
var t2= "Введите массу груза, кг (число от 1 до 10000000 включительно) ";
var t3= "<input type=text name="a1" value="до 8 цифр" maxlength=8 onchange="validate(this, 1, 10000000)"><br>";
var t4= "Введите высоту загрузки груза, мм (число от 1 до 10000000 включительно) ";
var t5= "<input type=text name="a2" value="до 8 цифр" maxlength=8 onchange="validate(this, 1, 10000000)"><br>";
var t6= "<input type=button name="Reset" value="Сбросить" OnClick='javascript:reset ()'> ";
var t7= "<input type=button name="go" value="далее" OnClick='javascript:text= ("a1";"a2")'></form>";
document.write(t1+t2+t3+t4+t5+t6+t7);
window.a1=document.forms["name1"].a1.value;
window.a2=document.forms["name1"].a2.value;
}вся проблемма связана с выводом на экран циклично формой, т.е. функции - form_loads, как создать чтение данных - голову ломаю, просто форму HTML не принимает JS, и через тупой вывод текста - тоже не вышло..
Подскажите как выводить правильно форму с запросами в JS??

