Итак, у меня есть настройка Colorbox для функции document.ready:
$(document).ready(function () {
$('#btnMyButton').colorbox({
href: "./Modals/MyModal.aspx",
iframe: true,
height: 450,
width: 550,
opacity: .60,
overlayClose: false,
escKey: false,
onClosed: function () {
var mypage = Sys.WebForms.PageRequestManager.getInstance();
mypage._doPostBack('upGrid', '');
}
});
});
При закрытии палитры я делаю обратную передачу на панель обновления (upGrid). В MyModal у меня есть кнопка, которая закрывает Colorbox как таковой:
<asp:Button ID="btnCancel" runat="server" Text="Cancel" OnClientClick="parent.$.fn.colorbox.close(); return false;" CssClass="button cancel" />
Панель обновлений содержит сетку, а цветовая панель выводит пользователя на страницу загрузки. Если они успешно загрузили файл, программа анализирует данные для заполнения таблицы. Поэтому при вызове OnClosed для colorbox сетка должна обновляться.
Если пользователь щелкает btnMyButton и продолжает нажимать btnCancel на модале, он не может снова щелкнуть btnMyButton, чтобы цветовая панель снова загрузила модал. Если я переместлю btnMyButton за пределы панели обновления, он будет работать нормально, но я хотел, чтобы btnMyButton внутри панели обновлений обрабатывал его скрытие / отображение в зависимости от того, загружал ли пользователь уже файл, он не должен его видеть.
Кто-нибудь сталкивался / решал какие-либо проблемы с colorbox, не отображаемым после закрытия внутри панели обновления ASP.NET?