Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вывод определенного блока при выполнении условий (https://javascript.ru/forum/misc/27537-vyvod-opredelennogo-bloka-pri-vypolnenii-uslovijj.html)

sergiocharm 16.04.2012 16:01

Вывод определенного блока при выполнении условий
 
Можете подсказать такой код который при бы при расчете высчитывал сумму, итоговая цифра проверялась в условиях и если цифра входит в определенный промежуток, тогда чтобы выводился определенный блок?

К примеру есть 3 товара, при вводе условий (цифр, галочек) функция считает и если ответ получается в пределах определенных цифр то выводится к примеру блок 3.

Если это очень просто ткните мне куда нить в книгу

9xakep 16.04.2012 16:08

Ну сделайте что-нибудь подобное:
var a = 1
var b = 2
var c = 3
if(a==1) {
  if(b==2) {
    if(c==3) {
      alert('все 3 условия верны')
    }
    }
  }

sergiocharm 16.04.2012 16:20

ммм... ну вот смотрите

к примеру есть 3 поля, в одно я ввожу 4 в другое 8 в третье 10 плюсую(или минусу или и то и другое), получается ответ 22. Итоговые блоки: 1-10 это А, 10-20 это блок Б, 20-30 это блок С. 22 входит в пределы 20-30 значит выводится блок С.

http://www.avtonomno.ru/ceni.html Вот такой же я калькулятор хочу сделать.

9xakep 16.04.2012 16:39

<input id='text1' type='text'>
<input type='text' id='text2'>
<input type='text' id='text3'>
<input type='button' value='run' onclick='run()'>
<script>
function run() {
var a = document.getElementById('text1').value
var b = document.getElementById('text2').value
var c = document.getElementById('text3').value
var e = a+b+c
if(e >= 1 && e < 10) alert('блок А') 
if(e >= 10 && e < 20) alert('блок B')
if(e >= 20 && e <= 30) alert('блок C')
}
</script>

sergiocharm 16.04.2012 16:58

Делаю так:
<input id='text1' type='text'>
<input type='text' id='text2'>
<input type='text' id='text3'>
<input type='button' value='run' onclick='run()'>
<script>
function run() {
var a = document.getElementById('text1').value
var b = document.getElementById('text2').value
var c = document.getElementById('text3').value
var e = a+b+c
if(e >= 1 && e < 10) alert('блок А') 
if(e >= 10 && e < 20) alert('блок B')
if(e >= 20 && e <= 30) alert('блок C')
}
</script>

<div id="text1" style="display:none" class="tegs">Дима блять
</div>

<div id="text2" style="display:none" class="tegs">Уася блять
</div>

<div id="text3" style="display:none" class="tegs">Амир блять
</div>


но почему то не работает. И мне не надо алертом выводить, а нужно чтобы блок раскрывался

sergiocharm 16.04.2012 17:02

ааа... я вообще хрень какую то написал)))... в общем надо чтобы блок открывался а не всплывало окно

sergiocharm 16.04.2012 17:44

помогите плиз... как реализовать такой калькулятор? 9xakep, вы мне уже что то интересное показали, но как сделать чтобы блок открывался? или может чтобы в блоке открывалось то с условием чего совпадает ответ. Как то так:)

9xakep 16.04.2012 17:49

<input id='text1' type='text'>
<input type='text' id='text2'>
<input type='text' id='text3'>
<input type='button' value='run' onclick='run()'>

<div id="div1" style="display:none" class="tegs">Не матерись блять1
</div>

<div id="div2" style="display:none" class="tegs">Не матерись блять2
</div>

<div id="div3" style="display:none" class="tegs">Не матерись блять3
</div>
<script>
function run() {
var divs = document.getElementsByTagName('div')
for(i=0;i<divs.length;i++) {
divs[i].style.display = 'none'
}
var a = +document.getElementById('text1').value
var b = +document.getElementById('text2').value
var c = +document.getElementById('text3').value
var e = a+b+c
if(e >= 1 && e < 10)  document.getElementById('div1').style.display = ''
if(e >= 10 && e < 20)  document.getElementById('div2').style.display = ''
if(e >= 20 && e <= 30) document.getElementById('div3').style.display = ''
}
</script>

sergiocharm 16.04.2012 17:50

Цитата:

Не матерись блять1
)))

sergiocharm 16.04.2012 17:56

первый блок открывается, если ответ до 10, но если ответ больше 10 ничего не открывается, но и не исчезает первый блок. Как сделать чтобы выводились остальные блоки и чтобы блок закрывался при выводе другого блока


Часовой пояс GMT +3, время: 04:05.