Как показать загрузочный загрузчик из кода позади?

У меня есть кнопка, которая открывает попсовый загрузчик. Это разметка.

 <HeaderStyle Width="6%"></HeaderStyle>
      <ItemTemplate>
        <asp:LinkButton runat="server" ID="button1" data-toggle="popover" CssClass="btn btn-primary" Text="Button1" />
      </ItemTemplate>

Javascript:

  $('[data-toggle="popover"]').popover({
    placement: 'left',
    trigger: 'click',
    html: true,
    content: $('#testDiv')
  });

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

C#

ScriptManager.RegisterStartupScript(this, GetType(), "popoverscript", "$('#testDiv').popover('show'); ", true);

Любое предложение высоко ценится.

2 ответа

Звучит как код, чтобы показать popover не выполняется, потому что библиотека jQuery может еще не загружена или не загружена ready состояние при попытке позвонить popover('show') функция в RegisterStartupScript метод. Попробуйте обернуть этот вызов функции внутри document.ready блок:

string script = "$(function() { $('#testDiv').popover('show'); });"

ScriptManager.RegisterStartupScript(this, GetType(), "popoverscript", script, true);

Примечание: также убедитесь, что $('[data-toggle="popover"]').popover(...) определение уже обернуто внутри document.ready заблокировать, если popover все еще не появляется.

Похожие проблемы:

Показать поповер из кода позади

загрузочный поповер из кода позади

Чтобы прояснить решение, мы нашли немного:

Это была проблема времени. Мы пытались инициализировать всплывающие окна в JavaScript. Мы положили это:

$('[data-toggle="popover"]').popover({
    placement: 'left',
    trigger: 'click',
    html: true,
    content: $('#testDiv')
  });

внутри звонка Sys.Application.add_load(), Проблема была в том, что когда мы пошли показывать всплывающее окно с сервера, всплывающие окна еще не были инициализированы, потому что что-либо на клиенте будет выполняться после того, как сервер будет готов. Решение состояло в том, чтобы переместить инициализацию и вызов для отображения внутри обработчика событий щелчка кнопки на стороне сервера, чтобы убедиться, что они были инициализированы и затем показаны в правильном порядке.

В событии кнопки C#:

ScriptManager.RegisterStartupScript(this, GetType(), "popoverscript", "$('#" + 
button.ClientID + "').popover({ html: true, content: $('#actionButtonDiv'), 
container: 'body', trigger: 'focus', placement: 'left'});", true); 

ScriptManager.RegisterStartupScript(this, GetType(), "show", "$('#" + button.ClientID 
+ "').popover('show');", true);
Другие вопросы по тегам