JQuery + Диалог Открыть + Тайм-аут - PullRequest
0 голосов
/ 30 июня 2010

У меня есть диалоговое окно на моей странице JSP, и оно реализовано с использованием jQuery.

Если для моего сервера истекло время ожидания, и я щелкаю по кнопке, чтобы открыть диалоговое окно, моя страница входа отображается внутри диалогового окна.

Я хочу закрыть диалоговое окно и перенаправить на страницу входа.

Как мне этого добиться?

Ответы [ 2 ]

1 голос
/ 30 июня 2010

Предполагается, что вы спрашиваете, что при нажатии на ссылку открывается диалоговое окно jquery, или оно перенаправляет вас на страницу входа в систему:

У вас может быть кнопка ссылки входа в систему, например:

 <a href="loginURL">Login</a>

, затем в javascript:

  $("a").click(function() {

       if (code to determine if server is not timed-out)
            $("selectorForDialog").dialog({ options });
            return false;
       }
  }

, если у сервера нет тайм-аута, он откроет диалоговое окно, иначе он перейдет на URL, указанный href в <a>ссылка

http://jqueryui.com/demos/dialog/

0 голосов
/ 30 июня 2010

Я думаю, что вам нужно сделать в этой ситуации, чтобы создать глобальную функцию, которая позволит вам «прорвать» диалог (который, я предполагаю, будет использовать iframe ...).Так, например, на своей странице JSP вы можете создать такую ​​функцию, как:

FrameBreakout = function(url) {
  document.location.href = url;
};

И когда вы отрисовываете ответ для страницы входа, сделайте что-то похожее на:

if (parent && parent.FrameBreakout)
{
  parent.FrameBreakout("/login.jsp");
}

Когда этот код выполняется внутри iframe (поэтому мы сначала проверяем родительский объект), это приведет к перенаправлению внешнего документа.

Это действительно шаблон, но он должен привести вас в правильном направлении ...

...