Обновить страницу с наборами фреймов при нажатии кнопки

У меня есть веб-приложение, построенное вокруг набора фреймов. Главная страница (с макетом набора фреймов) — index.aspx. После того, как пользователь входит в систему, если есть какие-либо предупреждения, он перенаправляет основной фрейм содержимого на страницу предупреждений с кнопкой подтверждения на ней. Когда они нажимают эту кнопку, я хочу, чтобы index.aspx перезагружался. Если я использую response.redirect("index.aspx") при нажатии кнопки, он перезагружает основной фрейм содержимого с другим набором фреймов.

Нажатие кнопки на стороне сервера устанавливает флаг в базе данных, чтобы пользователь больше не видел предупреждение.

Мой вопрос: как заставить полностью перезагрузить весь набор фреймов?


person mattgcon    schedule 15.11.2011    source источник


Ответы (1)


Избавьтесь от них, если сможете, но до тех пор вам придется делать это с помощью JavaScript:

*извините за пример c#, vb.net не интересует

Как выполнить ответ. Перенаправление на другой фрейм

//add this startup script to your button event handler
String csname1 = "FrameRedirect";  
Type cstype = this.GetType();

// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;

// Check to see if the startup script is already registered.
if (!cs.IsStartupScriptRegistered(cstype, csname1))
{
  string url = "index.aspx";
  String cstext1 = "parent.framename.location.href='" + url + "';"
  //or
  //String cstext1 = "parent.framename.location.replace('" + url + "');"
  cs.RegisterStartupScript(cstype, csname1, cstext1, true);
}
person rick schott    schedule 15.11.2011
comment
спасибо, я нашел (Response.Write(‹script›parent.location.href='../admin/login.aspx';‹/script›);) сразу после того, как вы ответили. Еще раз спасибо - person mattgcon; 15.11.2011