1. JavaScript / Говнокод #11526

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    $("#select_id :selected").attr("selected", false);
    $("#select_id option[value='" + new_value + "']").attr("selected", true);
    вместо
    $("#select_id").val(new_value);

    Запостил: splinter89, 03 Августа 2012

    Комментарии (4) RSS

    • Вообще по-хорошему надо менять selectedIndex
      Ответить
      • в самом jQuery для select'а val(...) и сводится к
        set: function( elem, value ) {
            var values = jQuery.makeArray( value );
        
            jQuery(elem).find("option").each(function() {
                this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0;
            });
        
            if ( !values.length ) {
                elem.selectedIndex = -1;
            }
            return values;
        }

        без перебора options никуда
        Ответить
        • О, круто-круто, спасибо за наводку. Не думал даже что val делает что-то такое серьезное
          Ответить
    • select_id.value менять не пробовали?
      Ответить

    Добавить комментарий