programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 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
|
|
|
|
С нами с 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>
|
|
|
|
|
programmer
С нами с 08.12.02
Сообщения: 7613
Рейтинг: 5760
|
Добавлено: 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 если б не его работа на стороне клиента
|
|
|
|
С нами с 30.06.07
Сообщения: 30
Рейтинг: 78
|
Добавлено: 13/07/07 в 09:46 |
document.getElementById не работает в мазиле, так что поаккуратнее с ним.
|
|
|
|
С нами с 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;
} |
|
|
|
|
Текстовая реклама в форме ответа Заголовок и до четырех строчек текста Длина текста до 350 символов Купить рекламу в этом месте! |