2008-10-22 2 views
0

Ребята, я писал код в течение 15 лет, но мне удалось избежать «Веб-разработки» до 3 месяцев назад.Как получить Asp.Net для перенаправления пользователя обратно в исходную точку

Я унаследовал устаревшее приложение Asp.net (начатое в .net 1.1, теперь мы на .Net 2.0), это инструмент администрирования для нашего продукта.

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

Список (может быть 200+ элементов) отображается в GridView (Страница A), пользователь нажимает кнопку редактирования для элемента, это приводит их к странице редактирования для элемента (Страница B), где они могут изменять значение (или значения, элемент в списке может быть связан с несколькими значениями, например, именем и адресом и предпочтительным цветом, породой cat.)

В настоящее время, когда пользователь нажимает «Сохранить» на странице B, мы перенаправляем обратно на страницу A. Страница открывается в верхней части списка, это раздражает пользователя, так как часто несколько элементов в последовательности должны быть сконфигурированы вместе, а пользователю необходимо запомнить 1. Помните, какой элемент они только что редактировали, 2. прокрутите вниз до что пункт

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

Самая быстрая остановка пистолета. , , и продолжайте читать

  1. Предложения по линии «перегруппировать элементы таким образом, есть меньше в списке» будет считаться бесполезным
  2. Допустимые точки, .Net 3.5 делает это автоматически, будет считаться бесполезен мной (но публиковать их в любом случае, это может помочь другому бедному дураку)
  3. Я думаю, что смогу сделать это, разместив Идентификатор отредактированного элемента при повторной загрузке страницы А и прокручивая сетку до этой точки, однако Мой вопрос. , ,

Есть ли функция, чтобы сделать это, что я не знаю, о (и что это) и/или
Что является общепринятым способом сделать это?

Заранее спасибо B. Worrier

ответ

3

Этого можно достичь с помощью привязных тегов. Когда выходные ваши элементы на странице A, установите якорь метки рядом с каждым элементом, как следующим образом:

<a name="#175"></a> 

Где этот пункт будет идентификатор элемента 175. Затем, когда вы поменяете обратно страницаА, добавить «# 175" на конце URL

Response.Redirect("PageA.aspx#175"); 
+0

@WebDude, спасибо, но установка тег якоря должен быть 2008-10-28 12:35:29

1

Самый простой способ вы можете сделать, это передать обратно идентификатор из страницаБ в строку запроса в URL, а перенаправляет обратно страницаА после сохранения в страницаБ.

например. www.example.com/PageA.aspx?editedId=89

и в PageLoad of PageA вы можете проверить, есть ли это на странице подробностей редактирования, проверяя, существует ли допустимое значение в HttpContext.Current.QueryStrubg [" отредактирован »], , если это было, значит, это из PageB. Вы можете использовать это значение для легкого выделения или выбора строки в datagrid

Самая быстрая остановка пистолета. , , и продолжайте читать ...

Хороший контроль позволяет вам редактировать несколько строк одновременно на одной странице, например, на странице PageA и сохранять их вместе. Проверьте контроль Telerik для данных. Тебе это понравится.

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