2013-02-20 2 views
1

Я использую «fnagel jQuery UI Selectmenu Widget», который вы можете найти here. Я хочу сделать виджет не выбрать новый вариант, когда изменение событие увольняется на основе какого-либо состояния.Сделать jQuery UI Selectmenu «Не изменять» значение в событии «change»

Обычно это происходит от события «return false;». Но это не работает. Здесь я создал fiddle.

Может кто-нибудь, пожалуйста, помогите мне сделать работу скрипки, не выбрав значение для события изменения?

Спасибо!

+0

Существует [повышение авторизовались на это] (https://github.com/fnagel/jquery-ui/pull/130) с просьбой тянуть - это еще не реализовано. – mccannf

+0

Так что я не могу исправить это, пока они его не реализуют? – Shaunak

+0

'return false' не будет работать, пока он не будет исправлен. @VikDavid имеет обходное решение ниже. – mccannf

ответ

3

Вы можете вручную сохранить и вернуть значение, jsfiddle here.

  1. Добавьте атрибут данных к элементу выбора:

    ... данных пред-выбран = "1" ...

  2. Используйте этот код для события изменения:

    var someCondition = true; // hardcoded for now 
    
    // Undo new selection 
    if (someCondition) { 
        var prevIdx = $('select#speedA').attr('data-prev-selected'); 
        $('select#speedA').selectmenu("index", prevIdx); 
        return; 
    } 
    
    // Save new index 
    var idx = $('select#speedA').selectmenu("index"); 
    $('select#speedA').data('data-prev-selected', idx); 
    
Смежные вопросы