|
|
|
| есть форма - калькулятор. При щелчке по чекбоксу
происходит прибавление значения чекбокса к значению итоговой суммы:
...
...
function DNV_total_price(pRice){
TotalPrice = parseInt(main.total_price.value) + parseInt(pRice);
main.total_price.value = TotalPrice;
}
//-->
</script>
...
...
<input type="checkbox" name="opt11" value="400" onClick=\DNV_total_price(this);">
|
все работает, но при повторном щелчке, года поле перестает быть чекд, нужно бы значение вычитать из суммы. Как проверить состояние поля checkbox перед вычислением?
И второй вопрос сразу: я хотел бы массив названий и значений чекбоксов хранить в массиве внутри функции. Тогда в функцию нужно передавать имя чекбокса, проверять его состояние, выбирать из массива соотв. значение и вычислять. Я в JS не силен, примерно представляю код, но в точности - нет. Помогите, плиз! | |
|
|
|
|
|
|
|
для: denvor
(01.09.2006 в 18:15)
| | Только по первому вопросу:
<html>
<head>
<script>
function check() {
if (document.forma.cb1.checked) {
document.forma.input1.value="Отмечено";
} else {
document.forma.input1.value="Не отмечено";
}
}
</script>
</head>
<body>
<form name="forma">
<input type="checkbox" onclick="check()" value="val1" name="cb1" id="cb1"><label for="cb1">Чекбокс</label><br><br>
<input type="text" value="Не отмечено" name="input1"><br>
</form>
</body>
</html>
|
Вот отсюда можно вытянуть проверку чекбокса | |
|
|
|
|
|
|
|
для: aexb
(02.09.2006 в 15:57)
| | Спасибо! А если я передаю имя чекбокса
<input type="checkbox" onclick="check(this.name)" value="val1" name="cb1" id="cb1">
|
То как проверить состояние? Так:
<script>
function check(fieldName) {
if (document.forma.getElementByName(ieldName).checked) {
document.forma.input1.value="Отмечено";
|
? | |
|
|
|
|
|
|
|
для: denvor
(02.09.2006 в 23:36)
| |
<script>
function DNV_total_price(pRice)
{
var inpText = document.forms['main'].elements['total_price'];
var TotalPrice;
if(pRice.checked)
{
TotalPrice = parseInt(inpText.value) + parseInt(pRice.value);
}
else
{
TotalPrice = inpText.value - pRice.value;
}
inpText.value = TotalPrice;
}
</script>
<form name="main">
<input type="text" name="total_price" value="0">
<input type="checkbox" name="opt11" value="100" onClick="DNV_total_price(this);">
<input type="checkbox" name="opt11" value="200" onClick="DNV_total_price(this);">
<input type="checkbox" name="opt11" value="400" onClick="DNV_total_price(this);">
</form>
|
| |
|
|
|
|
|
|
|
для: RMW
(03.09.2006 в 00:20)
| | Большое спасибо! Все работает как надо, вопрос снят | |
|
|
|