使jQuery UI Selectmenu“不更改”'change'事件的值

时间:2013-02-20 20:07:56

标签: javascript jquery jquery-ui jquery-ui-selectmenu

我正在使用'fnagel jQuery UI Selectmenu Widget',你可以找到here。 我希望在基于某些条件触发更改事件时,使小部件不选择新选项。

通常这是由更改事件中的“return false;”完成的。但它不起作用。我在这里创建了一个fiddle

有人可以通过不选择更改事件的价值来帮助我完成小提琴工作吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

您可以手动保存并还原值jsfiddle here

  1. 向select元素添加数据属性:

    ... data-prev-selected =“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);