Изменить содержимое мастер-страницы без многократной загрузки страницы

У меня есть главная страница и страница содержимого. Макет похож на верхний и нижний колонтитулы на главной странице, а остальное содержимое находится на странице содержимого/дочерней.

Теперь я хочу динамически изменить верхний и нижний колонтитулы главной страницы. Для этого я закодировал событие Page_load главной страницы.

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

Есть ли способ решить эту проблему. Я хочу изменить верхний и нижний колонтитулы главной страницы на определенное время без обновления страницы содержимого.

Я видел много сообщений, но я не нашел ни одного точного ответа ..

Мой код: это событие page_load главной страницы..

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            DIVHeader.InnerHtml = obj.getHeaderHTMLFinal();
            DIVFooter.InnerHtml = obj.getFooterHTMLFinal();
        }
    }

person ravidev    schedule 23.09.2011    source источник


Ответы (2)


Где вы хотите изменить нижний колонтитул на главной странице?

Вы можете обернуть верхний и нижний колонтитулы элементами управления ContentPlaceholder и настроить их непосредственно на клиентских страницах.

Вы также можете взаимодействовать с главной страницей на клиентских страницах в программном коде через ссылку Page.Master.

person Frazell Thomas    schedule 23.09.2011
comment
@Frazell .. Я сделал это. Я установил верхний и нижний колонтитулы master в событии загрузки страницы контента, но из-за того, что эта страница загружается три раза .. - person ravidev; 23.09.2011
comment
@ravidev как страница загружается ровно три раза? - person Frazell Thomas; 23.09.2011
comment
Я не знаю, почему страница загружается три раза. Но когда я изменяю содержимое верхнего и нижнего колонтитула через событие Page_load главной страницы или страницы содержимого, она загружается три раза. - person ravidev; 23.09.2011
comment
@ravidev Есть ли что-нибудь в исходном коде HTML, что запускает многократную загрузку? Браузер не может просто обновить страницу без предварительной инструкции (HTTP не имеет состояния). - person Frazell Thomas; 23.09.2011
comment
@frazell .. у меня есть div в верхнем и нижнем колонтитулах, в котором я устанавливаю html-данные главной страницы. - person ravidev; 23.09.2011
comment
@ravidev Как этот Div настраивает содержимое? Это похоже на корень вашей проблемы. Возможно, вам потребуется уточнить свой вопрос о том, что не удается во взаимодействии между JavaScript и сервером. - person Frazell Thomas; 23.09.2011
comment
@frazell..в настоящее время я не использую javscript.я установил div верхнего и нижнего колонтитула, используя код позади.в событии загрузки главной страницы.это приводит к тому, что страницы загружаются три раза.. - person ravidev; 23.09.2011
comment
@ravidev Можете ли вы отредактировать свой вопрос, включив в него часть кода (HTML и исходный код)? - person Frazell Thomas; 23.09.2011

Попробуйте использовать панель обновлений. Вы можете обновить содержимое панели без перезагрузки всей страницы.

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

надеюсь, что помогло.

person reven    schedule 23.09.2011