Реклама на сайте Advertise with us

Массив JS сложение и вывод

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:

programmer

С нами с 08.12.02
Сообщения: 7611
Рейтинг: 5752

Ссылка на сообщениеДобавлено: 12/07/07 в 22:59       Ответить с цитатойцитата 

есть пример
Код:
<html><head><script language="JavaScript">
function x(){
document.getElementById('rex').innerText=document.ename.a1cena.value*document.ename.a2cena.value+document.ename.a3cena.value*document.ename.a4cena.value;
}

</script></head><body>
<form name="ename">
Колличество:
<input type="text" value="" name="a1cena">
Цена1:<input type="text" value="" name="a2cena">
Количество2: <input type="text" value="" name="a3cena">
Цена2 :<input type="text" value="" name="a4cena"></form>
Результат:<span id="rex"></span>Рубля<br><input type="button" value="Result" onClick="x()"></body></html>

как переписать функцию если количество полей заранее неизвестно
и часть из них могут быть disabled?
кто знает JS

крипта на ByBit

0
 



С нами с 30.06.07
Сообщения: 30
Рейтинг: 78

Ссылка на сообщениеДобавлено: 13/07/07 в 01:01       Ответить с цитатойцитата 

в целом коряво, но я бы сделал как-нить так:
Код:

<html><head>

<script language="JavaScript">
function x(){
var quotes=document.getElementsByTagName("input");
var sum = 0;
for(var i=quotes.length-1;i>=0;i--){
    var qu=quotes[i];
    if ( qu.name.substr( 0, 3) == "qua" &&
         !document.ename[ "qua" + qu.name.substr( 3 )].disabled ) {
       // for each quantity found, we can find a price...
       var q = parseInt( document.ename[ "qua" + qu.name.substr( 3 )].value );
       var cena = parseInt( document.ename[ "cena" + qu.name.substr( 3 )].value );
       sum += q*cena;
    }
}
document.ename.rex.value = sum;
}
</script>
</head><body>

<form name="ename">
Количество:  <input type="text" value="1" name="qua1">
Цена1:<input type="text" value="2" name="cena1">

Количество2: <input type="text" value="3" disabled name="qua2">
Цена2 :<input type="text" value="4" disabled name="cena2">

Количество3: <input type="text" value="5" name="qua3">
Цена3 :<input type="text" value="6" name="cena3">

Результат: <input name="rex" size=4> Рублей<br>
</form>
<input type="button" value="Result" onclick='x();'>

</body></html>

8
 

programmer

С нами с 08.12.02
Сообщения: 7611
Рейтинг: 5752

Ссылка на сообщениеДобавлено: 13/07/07 в 01:39       Ответить с цитатойцитата 

спасибо
свое родил в муках
Код:
<html><head>
<script language="JavaScript">
function x(){
var summ=0;
cena = new Array();
if(document.getElementById('tf0').disabled == false) cena[0]=(document.ename.cena0.value-0);
if(document.getElementById('tf1').disabled == false) cena[1]=(document.ename.cena1.value-0);
for (var i = 0; i < cena.length; i++)
if(cena[i])summ += cena[i];
document.getElementById('rex').innerText=summ;
}
</script></head><body>
<form name="ename">
Колличество:
<input type="text" value="2" name="cena0" id="tf0">
Цена1:<input type="text" value="3" name="cena1" id="tf1">
Результат:<span id="rex"></span>Рубля<br><input type="button" value="Result" onClick="x()"></body></html>

лучше поздно чем никогда
долбанный JS если б не его работа на стороне клиента

крипта на ByBit

0
 



С нами с 30.06.07
Сообщения: 30
Рейтинг: 78

Ссылка на сообщениеДобавлено: 13/07/07 в 09:46       Ответить с цитатойцитата 

document.getElementById не работает в мазиле, так что поаккуратнее с ним.

8
 



С нами с 27.06.07
Сообщения: 289
Рейтинг: 247

Ссылка на сообщениеДобавлено: 13/07/07 в 10:29       Ответить с цитатойцитата 



дык
Код:
function GetById(id) {
    if(document.getElementById) {
        return document.getElementById(id);
    }else if(document.all) {
        return document.all[id];
    }else if(document.layers) {
        return document.layers[id];
    }
    return null;
}

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »