Когда вы отправляете страницу, ваш запрос переходит на вложенную страницу, и он отвечает только для этой страницы.Браузер получает ответ от вложенной страницы и просто отображает, что он возвращает.
Вот то, что я делаю, и это похоже.
У меня есть одна главная страница, и на этой странице я загружаю разделы через Ajax.Разделы - это пользовательские элементы управления ASP.NET (не страницы), вот почему: страницы имеют свои собственные формы и плохо воспроизводятся при вложении.Запрос ajax передает некоторые параметры, загружает элемент управления, а затем отображает его, используя пустую пустую страницу (что я объясню ниже).Сгенерированный HTML-код отправляется обратно на страницу и загружается в div.
Вот как я загружаю элемент управления (в этом примере «FormlessPage» - это фиктивная страница):
public class FormlessPage : Page { public override void VerifyRenderingInServerForm(Control control) { } }
//Ajax call
FormlessPage page = new FormlessPage();
UserControl ctrl = null;
ctrl = (UserControl)page.LoadControl("~/UserControls/someUC.ascx");
// Initialize parameters
// Add the control to the page
page.Controls.Add(ctrl);
// Render the page and capture the resulting HTML.
StringWriter writer = new StringWriter();
HttpContext.Current.Server.Execute(page, writer, false);
// Return that HTML, as a string.
json = writer.ToString();