За последние 24 часа нас посетили 18170 программистов и 1606 роботов. Сейчас ищут 1988 программистов ...

jQuery + IE

Тема в разделе "JavaScript и AJAX", создана пользователем Elkaz, 6 июл 2009.

  1. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Есть такой код
    [js]
    <script type="text/javascript">
    $("#account_to_title").hide(0);
    $("#account_to_input").hide(0);
    $("#account_to_label").hide(0);

    $(":radio").change(function(){

    if ($(this).val() == "by_account"){
    $("#card_to_title").hide(0);
    $("#fio_to_title").hide(0);

    $("#card_to_input").hide(0);
    $("#fio_to_input").hide(0);

    $("#card_to_label").hide(0);
    $("#fio_to_label").hide(0);

    $("#card_to").val("");
    $("#fio_to").val("");

    $("#account_to_title").show(0);
    $("#account_to_input").show(0);
    $("#account_to_label").show(0);
    $("#account_to").focus();
    } else{
    $("#account_to").val("");
    $("#account_to_title").hide(0);
    $("#account_to_input").hide(0);
    $("#account_to_label").hide(0);

    $("#card_to_title").show(0);
    $("#fio_to_title").show(0);

    $("#card_to_input").show(0);
    $("#fio_to_input").show(0);

    $("#card_to_label").show(0);
    $("#fio_to_label").show(0);

    $("#card_to").focus();

    }
    });
    </script>
    [/js]

    Под всеми популярными браузерами, кроме IE7 (8 не проверял), работает нормально.
    Что короче нужно. Чтобы при изменении значения radio button'a выполнялся определенный код (выше).
    В IE для этого еще надо снять фокус с элемента (мышкой тыкнуть в любую область на экране) - только после этого действие произойдет. Пытался прописать в коде
    [js]
    $(this).blur();
    [/js]

    Ноль реакции. Пока больше никаких мыслей и идей нет.
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    У input есть атрибут Onchange
     
  3. TheShock

    TheShock Активный пользователь

    С нами с:
    30 май 2009
    Сообщения:
    1.255
    Симпатии:
    0
    Адрес:
    Київ
    Код (Text):
    1.  $(":radio").change(function(){
     
  4. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Kreker
    => мне нужен костыль под IE
     
  5. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    Проблема решена. Пришлось change заменить на click. По моему мнению решение крайне безграмотное. Надо будет на досуге посмотреть, что IE делает с onChange.