Панель обновления и fancybox не работают, если fancybox не открывается дважды - PullRequest
0 голосов
/ 06 марта 2012

Хорошо, у меня перетащена страница во всплывающее окно fancybox,

(примечание: подкачка работает на 100% на самой странице),

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

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

Может ли кто-нибудь указать мне правильное направление относительно того, что может быть причиной этого? Я уже пытался изменить метод 'body' на метод 'form'.

РЕДАКТИРОВАТЬ: он управляет 1 обратной передачей, затем останавливается и, если повторное открытие работает более 1 обратной передачи.

РЕДАКТИРОВАТЬ: я обнаружил, что когда панель обновления отправляет запрос и возвращается, он создает вторичный объект __VIEWSTATE в панели обновления.

Код для вызываемой страницы:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Search.aspx.cs"Inherits="AfricaCentre.Search" EnableEventValidation="false" EnableViewState="false" %>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<%--<script type="text/javascript" src="<%= ResolveUrl("~/scripts/Scripts.js")  %>"></script>--%>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<!-- SEARCH -->
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        Hello
        <asp:Button Text="Test" runat="server" />
    </ContentTemplate>
</asp:UpdatePanel>    </form>
</body>
</html>

Кнопка Code Link для вызова fancybox со скриптом:

<a id="search" href="/Search" class="fancybox.ajax">SEARCH</a>
$("#search").fancybox(
            {
                type: 'ajax',
                autoSize: false,
                padding: 0,
                width: 800,
                height: 567,
                scrolling: 'no',
                openEffect: 'fade',
                openSpeed: 'slow',
                transitionIn: "elastic",
                transitionOut: "elastic",
                autoScale: false,
                hideOnContentClick: false,
                afterLoad: function () {
                }
            }
        );

1 Ответ

0 голосов
/ 12 марта 2012

Я только что использовал iframe для решения моей проблемы.

...