2010-07-09 3 views
1

У меня есть ретранслятор ASP.net на моей странице, который создает загрузку списков. Я также использую плагин JQuery UI Slider для создания слайдера из div, содержащихся в некоторых элементах списка. Поэтому у меня есть функция javascript, называемая initSliders(), которая запускается при загрузке страницы, которая создает ползунки. Это прекрасно работает.Получение функции Javascript для работы на репитере ASP.Net DataBind

Повторитель находится внутри Ajax UpdatePanel, который обновляется каждые 10 секунд. Повторитель восстанавливается на каждой итерации. В этом случае проблема возникает, на ререше ползунки исчезают. Я считаю, что это связано с тем, что повторитель регенерируется, поэтому я думаю, что мне нужен способ вызова функции javascript initSliders() после каждого повторного загрузки ретранслятора.

Любые идеи, как я буду это делать?

ответ

2

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

способ сделать это можно было бы добавить фрагмент кода, как это на Page_Load

string script = //SCRIPT THAT CREATES THE SLIDER 
ScriptManager.RegisterStartupScript(UpdatePanel1, UpdatePanel1.GetType(), 
    "SLIDER", script, true); 

EDIT

Частичный ответ обновления устанавливаются на innerHTML элемента управления сНом и из-за того, что нет встроенный код javascript в панели обновления будет работать при обновлении.

Вот почему вам нужно зарегистрировать скрипт с помощью ScriptManager

Более подробное объяснение here

+0

+1, хороший объяснение и ссылку. –

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