Показать сообщение отдельно
  #9 (permalink)  
Старый 23.02.2015, 01:41
Интересующийся
Отправить личное сообщение для griga999 Посмотреть профиль Найти все сообщения от griga999
 
Регистрация: 22.02.2015
Сообщений: 21

Сообщение от newtempacc Посмотреть сообщение
<html>
<head>
</head>
<body>
<meta charset="windows-1251" />
<select name="shk_delivery" style="width:99%;">
<option id="delivery1" value="delivery1"  selected="selected" >delivery1</option>
<option id="delivery2" value="delivery2" >delivery2</option>
<option id="delivery3" value="delivery3" >delivery3</option>
</select>

<select id="test">
<option>350</option>
<option>1050</option>
<option>1700</option>
<select>


<div  id="total_price" style="text-align:right;">Общая сумма: <b>350</b> руб.</div>

<script>

test.onchange=function(){
 document.querySelector('#total_price b').innerHTML=this.value
}

onload=document.querySelector("select").onclick=function(){
 var n=+document.querySelector('#total_price b').innerHTML
 if(n<1000) delivery2.disabled=true
 if(n>1000) delivery2.disabled=false
 if(n<1500) delivery3.disabled=true
 if(n>1500) delivery3.disabled=false
}
</script>

</body>
</html>
Всё замечательно работает.

Такой вопрос: В корзине я могу изменять кол-во товаров. Сумма заказа меняется автоматически. Т.е. то значение которое в:
Код:
<div  id="total_price" style="text-align:right;">Общая сумма: <b>780</b> руб.</div>
Оно меняется.

Как мне можно отследить изменение этого значения? И если оно изменилось вызвать функцию, которая изменит параметр disable?

Сейчас у меня JavaScript выглядит вот так:
<script type="text/javascript">
window.onload = function check_delivery() {
var priceValue=document.querySelector('#total_price b').innerHTML;
parseInt(priceValue,10);
 if(priceValue<1000) delivery2.disabled=true;
 if(priceValue>1000) delivery2.disabled=false;
 if(priceValue<1500) delivery3.disabled=true;
 if(priceValue>1500) delivery3.disabled=false;
}


А html вот так:
Код:
<select name="shk_delivery" style="width:99%;">
	<option id="delivery1" value="Наложенный платеж (Только если заказ более 1000 рублей)"  selected="selected" >Наложенный платеж (Только если заказ более 1000 рублей) (240 руб.)</option>
	<option id="delivery2" value="Почтовое отправление (бандероль), по 100% предоплате." >Почтовое отправление (бандероль), по 100% предоплате. (170 руб.)</option>
	<option id="delivery3" value="Бесплатная доставка, если заказ более 1500 рублей. По 100% предоплате." >Бесплатная доставка, если заказ более 1500 рублей. По 100% предоплате. </option>
      </select>
Ответить с цитированием