2010-11-24 3 views
1

Простой вопрос здесь, но у меня есть мучительное чувство, что есть более интересное решение, чем тот, я выбрал:Вызов обработчика событий на другой странице

Page Two состоит из выпадающего списка, и изменение событие обрабатывается для выполнения некоторого запроса.

protected void ddlSavedQueries_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    /* stuff happens */ 
} 

Страница 1 является домашней страницей, где я предоставляю другую версию этого выпадающего списка. Я хочу, чтобы событие изменения в этом случае перенаправляло элемент управления на страницу Two, и, затем выполнил обработчик события.

Мое дешевое решение - это просто перенаправление с величиной querystring, которая обрабатывается при загрузке страницы. У меня отсутствует более интересный подход?

+0

Вашего решения о суммах его в моих глазах. Или вы можете использовать хеш (#) и некоторый хитрый javascript для его чтения, запустить событие изменения, а затем позволить ASP отнять его оттуда. – 2010-11-24 22:35:52

ответ

2

Если вы не хотите, чтобы уродливые вещи с значением строки запроса, я полагаю, вы могли бы поставить что-то в Session и забрать ее Page_Load второй страницы (а затем очистить его из Session). Однако не совсем удивительное улучшение.

+0

Спасибо, посмотрев вокруг, я думаю, что эти вариации в подходе Redirect - это все, что доступно. – LesterDove 2010-11-29 01:04:23

1

Всегда ли отображаемая страница отображается при изменении раскрывающегося списка? Если да, рассмотрите возможность использования javascript на стороне клиента для перенаправления на правильную страницу, затем выполните любую логику на следующей странице в событии page_load. Пример использования JQuery:

$(function() { 

    $("select.classyouneedtodefine").change(function() { 
     document.location.href = "somepage.aspx?value=" + $(this).val(); 
    }); 

}); 

не тестировал выше ... только стрельбу из бедра

+0

Спасибо, посмотрев вокруг, я думаю, что эти вариации в подходе Redirect - это все, что доступно. – LesterDove 2010-11-29 01:05:08

Смежные вопросы