2012-04-01 3 views
0

У меня есть сдвиг событий, который устанавливает и сохраняет новое значение, у меня также есть привязка к изменению, которая перезагружает рендер новыми данными, но проблема в том, что рендер не загружайте слайдер интерфейса JQuery после изменения. Вот часть кода касаетсяМагистраль не загружает слайдер JQuery после скольжения

//my bind on change 
this.collection.bind('change',this.render); 
//my event when slide, editPriority set and save the new value 
"slidechange #priority": "editPriority" 
$('#priority').slider(); 

Для информации JQuery UI Slider загружается только страница загружена

+0

Боюсь, это слишком мало кода, показанного здесь. Где '$ ('# priority'). Slider();' called? –

ответ

2

Убедитесь $('#priority').slider(); вызывается в методе render.

+0

Но тогда мы повторно инициализируем плагин на каждом рендере, нет? – Hugo

+0

@ Хьюго, да, это именно та идея. Вы должны повторно инициализировать, чтобы прикрепить ползунок к новому элементу DOM. При повторном рендеринге старый элемент DOM для слайдера выбрасывается. – frontendbeauty

1

Вы можете просто обновить значение в методе рендеринга, выполнив .slider («значение», 55) и переместите инициализацию slicer в метод View.init.

У меня также есть метод View.clear, который вызывается при удалении представления, и это вызывает .slider ("destroy"), чтобы удалить слушатели & очистить.