2010-03-01 3 views
4

Я имею в видуOnChange событие с помощью selecttouislider

http://www.filamentgroup.com/lab/update_jquery_ui_slider_from_a_select_element_now_with_aria_support

и с трудом получения выбранного значения на ползунке. Изначально у меня был выпадающий список, который имел OnChange событие, связанное с ним .. и работал как шарм, вызвав

<select id="myselect" onchange="myfunction(this);" > 

но теперь требование изменилось к ползуну

$('select#myselect').selectToUISlider({sliderOptions: {stop: function(e,ui) {alert(this.val());}}}); 

он бросает мне это .val() не является функцией.

Я также попытался использовать

$('select#myselect').selectToUISlider({sliderOptions: {stop: function(e,ui) {alert(ui);}}}); 

но используя пользовательский интерфейс аргумент также не удалось получить выбранное значение ... он просто возвращает мне выбранный индекс.

раскрывающийся выглядит LKE это

<select name="myselect" id="myselect"> 
      <option value="20">txt1</option> 
      <option value="30">txt2</option> 
      <option value="40" selected="selected">txt3</option> 
      <option value="50">txt4</option> 
      <option value="60">txt5</option> 
     </select> 

Было бы замечательно, если бы я мог просто быть в состоянии вызвать OnChange событие поле выбора, но выглядит, когда с помощью ползунка, значение изменяется раскрывающихся но это не вызывает событие.

Любая помощь действительно оценена!

Благодаря

+1

Это то, что я, наконец, в конечном итоге делаю Поскольку раскрывающийся изменяются так или иначе ... Я призвал выпадающее меню и читать его значение ... $ (» выберите # myselect '). selectToUISlider ({sliderOptions: {stop: myFunction ($ (this) .parent(). find (' select ') [0])}}); и внутри myFunction я читаю, что выбрано в раскрывающемся списке ... у кого-то есть лучшая идея? –

ответ

4

событие вы на это слайдер UI, не <select> ... но значение <select> уже обновляется, так что просто принести, что, как это:

$('#myselect').selectToUISlider({ 
    sliderOptions: { 
    stop: function(e,ui) { 
     var currentValue = $('#myselect').val(); 
    } 
    } 
}); 
1

I просто наткнулся на эту же проблему, когда мне нужно было получить новое значение, если переключатель Slider OR Select Drop down, где был изменен, но опция «stop» не работает, когда я использую выделение выделения. Поэтому я использовал опцию «change» sliderOptions с функцией. Так же, как Ответ Ник, но как это:

$("select").selectToUISlider({ 
    // labels and tooltipSrc are selectToUISlider specific options 
    labels: 0, 
    tooltipSrc: "value", 
    sliderOptions: { 
     // swapped out stop for change here 
     change: function(e,ui) { 
      console.log($('select').val()); 
     } 
     } 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^