Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > В IE select ведет себя странно


Автор: UKS 14.9.2011, 12:59
Итак сабж:  у меня есть несколько SELECTов, которЬІе включаются после установления галочки в чек-боксе(и вЬІключаются(disabled) после убирания галочки). Проблема в Осле, которЬІй включает SELECT, но не обновляет вид до включеного (хотя включается). И так вЬІходит визуальнЬІй обман, что оно вЬІключено....=(

Я прикрепляю изображение, что б бЬІло понятнее:
Ето в мозилле: 
user posted image

Осел:
user posted image

После клика на ПСЕВДОdisabled обьект "Select" обновляет и сам вид до enabled... 

как лечить что б все бЬІло пучком в Осле тоже как и в других браузерах?

Автор: mcTep 14.9.2011, 13:26
Код в студию. Экстрасенсы в отпуске smile

У вас на клавиатуре буква Ы залипла что ли?


Автор: UKS 14.9.2011, 14:13
та нет) У меня руссконо нету) А ставить не хочу))) Три язЬІка -- неудобно же))

Так я ЬІ пишу двумя буквами=) Ь + І 
хДД


код: 

Код

function CheckBox2Change()
{
if(document.CheckBoxes.TR2.checked == true)
    {
    document.getElementById("newWidth2").disabled =false;
    document.getElementById("newProfile2").disabled =false;
    document.getElementById("newRadius2").disabled =false;
    document.CheckBoxes.TR3.disabled = false;
    NewInputTable ('InputTable1',2);
    PorivnTriohRozmiriv();
    
    }
else{
    document.getElementById("newWidth2").disabled =true;
    document.getElementById("newProfile2").disabled =true;
    document.getElementById("newRadius2").disabled =true;
    document.CheckBoxes.TR3.checked = false;
    document.CheckBoxes.TR3.disabled = true;
    CheckBox3Change()
    NewInputTable ('InputTable1',1);
    PorivnTriohRozmiriv();
    };
return false;
}
function CheckBox3Change()
{
if(document.CheckBoxes.TR3.checked == true)
    {
    document.getElementById("newWidth3").disabled =false;
    document.getElementById("newProfile3").disabled =false;
    document.getElementById("newRadius3").disabled =false;
    NewInputTable ("InputTable1",3);
    PorivnTriohRozmiriv();
    }
else{
    document.getElementById("newWidth3").disabled =true;
    document.getElementById("newProfile3").disabled =true;
    document.getElementById("newRadius3").disabled =true;
    NewInputTable ("InputTable1",2);
    PorivnTriohRozmiriv();
    };
return false;
}

Автор: mcTep 17.9.2011, 12:07
А давай весь код, вместе с html, чтобы сразу в браузере запустить? В архивчике.

Автор: UKS 18.9.2011, 16:13
http://dl.dropbox.com/u/5732489/Shinniy-Calculator_kusok.zip

Автор: нуп 18.9.2011, 18:27
Уреж пример до минимума, расставь алерты и всё поймешь, без простого дебага никуда smile 

Автор: mcTep 19.9.2011, 12:29
У вас в ИЕ не срабатывает событие onChange на 
Код

<input type="checkbox" name="TR2" onchange='CheckBox2Change()' >


Оно срабатывает только после события onBlur, т.е. когда фокус уйдет с инпута. Попробуйте использовать событие onClick:
Код

<input type="checkbox" name="TR2" onclick='CheckBox2Change()' >

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)