Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 14.11.2010, 00:46
Интересующийся
Отправить личное сообщение для Resident Посмотреть профиль Найти все сообщения от Resident
 
Регистрация: 13.11.2010
Сообщений: 11

Спасибо вам, уважаемый!
совсем забыл про онклик для тупого ie =)
но ещё один момент, в ie и только в нём значение, в моём коде, становится равным нулю не могли бы подсказать что и как. я кончено могу по вашему сделать всё, но убить ещё пол дня на то что бы разобраться в нём уже не хватит сиил
Ответить с цитированием
  #12 (permalink)  
Старый 14.11.2010, 01:12
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

У вас изначально значение берется из value, но потом оно теряется, а точнее становится значением переменной t. Если ее убрать, то сохраняется начальное значение. Но вам нужно чтобы значение менялось, для этого нужно чтобы обработчик события onchange постоянно проверял (имело активное) его наличие.

Посмотрите как у меня это реализовано:

select1.onchange = function(){
     for(var i=0; i<this.length; i++){
           var options = document.createElement("option");
           select2.appendChild(options);
           *!*span.innerHTML = select2.options[select2.selectedIndex].innerHTML;*/!*
    }
};
 
select2.onchange = function(){
     for(var j=0; j<this.length; j++){
           *!*span.innerHTML = this.options[this.selectedIndex].innerHTML;*/!*
     }
};

Последний раз редактировалось monolithed, 14.11.2010 в 01:17.
Ответить с цитированием
  #13 (permalink)  
Старый 14.11.2010, 01:16
Интересующийся
Отправить личное сообщение для Resident Посмотреть профиль Найти все сообщения от Resident
 
Регистрация: 13.11.2010
Сообщений: 11

блиииин ничё не понятно. завтра с утра лучше поразбираюсь
Ответить с цитированием
  #14 (permalink)  
Старый 14.11.2010, 02:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

monolithed,
на всякий случай )))
while(select2.childNodes.length>0){
                select2.removeChild(select2.childNodes[select2.childNodes.length-1]);
            }

можно сократить до
select2.options.length=0;
Ответить с цитированием
  #15 (permalink)  
Старый 14.11.2010, 13:27
Интересующийся
Отправить личное сообщение для Resident Посмотреть профиль Найти все сообщения от Resident
 
Регистрация: 13.11.2010
Сообщений: 11

сделал как то так, всё равно не то
function getCost(frm) {
   var oplata = document.getElementById('names').value ;
   var strana = document.getElementById('level').value ;
 var rez = 0;
 var norez = 0;
var  t = 0;

 oplata.onchange = function(){
	         for(var  i = 0; i<this.length; i++){

if (oplata == "2 раза 240 ТЕСТ" && strana == "Россия") {t=1};
if (oplata == "3 раза 250" && strana == "Россия") {t=250};
if (oplata == "1 раз 12р." && strana == "Россия") {t=12};
if (oplata == "1 раз 10р." && strana == "Франция") {t=10};
if (oplata == "2 раза 40" && strana == "Франция") {t=40}; 
if (oplata == "3 раза 50" && strana == "Франция") {t=50};
if (oplata == "2 раза 2140" && strana == "Турция") {t=2140};
if (oplata == "3 раза 2150" && strana == "Турция") {t=2150}; 
if (oplata == "2 раза 340" && strana == "Германия") {t=340};
if (oplata == "3 раза 350" && strana == "Германия") {t=350};
}}

norez = t;
rez = 2*t;
   if (frm.dop.checked == true) {document.getElementById('result').innerHTML = rez  }else{   document.getElementById('result').innerHTML = norez};}

Последний раз редактировалось Resident, 14.11.2010 в 13:29.
Ответить с цитированием
  #16 (permalink)  
Старый 14.11.2010, 15:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,108

Resident,
Пример: Проглотить не думая или разобраться
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<title></title>
<script>
var strana = {
 "Франция" : ['1 раз 10р.', '1 раз 10р.', '2 раза 40', '3 раза 50'],
 "Россия" : ['1 раз 12р.', '2 раза 240 ТЕСТ','3 раза 250'],
 "Турция" : ['2 раза 2140','3 раза 2150'],
 "Германия" : ['2 раза 340','3&nbsp;раза&nbsp;350'] }

function showNames(v){
    var mas = strana[v];
    var el = document.getElementById('names');
    el.options.length=0;
        for(var i=0;i<mas.length;i++){
        var opt = document.createElement("option");
        opt.appendChild(document.createTextNode(mas[i]));
        el.appendChild(opt);
    }
}

function getCost(frm) {
var oplata = document.getElementById('names');
oplata=oplata.options[oplata.selectedIndex].text;
var strana = document.getElementById('level');
strana=strana.options[strana.selectedIndex].text;
var rez = 0;
var t = 6663;
var norez = 0;
if (oplata == "2 раза 240 ТЕСТ" && strana == "Россия") {t=1};
if (oplata == "3 раза 250" && strana == "Россия") {t=250};
if (oplata == "1 раз 12р." && strana == "Россия") {t=12};
if (oplata == "1 раз 10р." && strana == "Франция") {t=10};
if (oplata == "2 раза 40" && strana == "Франция") {t=40};
if (oplata == "3 раза 50" && strana == "Франция") {t=50};
if (oplata == "2 раза 2140" && strana == "Турция") {t=2140};
if (oplata == "3 раза 2150" && strana == "Турция") {t=2150};
if (oplata == "2 раза 340" && strana == "Германия") {t=340};
if (oplata == "3 раза 350" && strana == "Германия") {t=350};

norez = t;
rez = 2*t;

if (frm.dop.checked == true) {document.getElementById('result').innerHTML = rez  }
else{   document.getElementById('result').innerHTML = norez};

}
</script>
</head>

<body onload="showNames('Франция')">
<form method="GET" name="formaa" id="txt" class="application" accept-charset="utf-8"  action="" >
<select name="strana" id="level" onchange="showNames(this.value); getCost(this.form)">
<option  value="Россия">Россия</option>
<option selected value="Франция">Франция</option>
<option  value="Турция">Турция</option>
<option  value="Германия">Германия</option>
</select>

<select name="cena" id="names" onChange="getCost(this.form)"></select>
<input type="checkbox" name="dop" id="checkbox_0" value="0.2" onclick="getCost(this.form)"  checked> Записывать звонки?<br>
<br>Стоимость
</form>
<table><tr><td id="result"></td></tr></table>
</body>
</html>
Ответить с цитированием
  #17 (permalink)  
Старый 14.11.2010, 21:07
Интересующийся
Отправить личное сообщение для Resident Посмотреть профиль Найти все сообщения от Resident
 
Регистрация: 13.11.2010
Сообщений: 11

Рони, я вас не совсем понял. помогите пожалуйста мне ктонибудь что бы с ie этот код работал. monolithed мне подсказал, но в силу своих скромных знаний по яве я не сумел разобраться
Ответить с цитированием
  #18 (permalink)  
Старый 14.11.2010, 21:25
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Чем вас не устраивает пример рони?
Ответить с цитированием
  #19 (permalink)  
Старый 14.11.2010, 22:38
Интересующийся
Отправить личное сообщение для Resident Посмотреть профиль Найти все сообщения от Resident
 
Регистрация: 13.11.2010
Сообщений: 11

простите пожалуйста меня за маю невнимательность просмотрел что есть код
Спасибо вам всем огромное
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнить список значениями из динамически созданного выпадающего списка zhuzha Элементы интерфейса 0 17.08.2010 14:40
Как добавить тег в каждый элемент списка? elias jQuery 4 15.08.2010 15:19
Помогите новичку с выпадающим списком interest Элементы интерфейса 5 19.05.2010 13:15
Sortable, два связанных списка. Как один из них сделать неизменяемым? kvecxjo jQuery 1 30.03.2010 03:15
Добавить значения из одного списка в другой XAOC Events/DOM/Window 10 28.08.2008 13:18