2008-10-22 4 views
0

15 개월 이상 코드를 작성했지만 3 개월 전까지는 "웹 개발"을 피할 수있었습니다.Asp.Net에서 사용자를 다시 시작 지점으로 리디렉션하는 방법

레거시 Asp.net 응용 프로그램 (.net 1.1에서 시작됨, 이제 .Net 2.0에 있음)을 상속 받았으며,이 도구는 우리 제품의 관리 도구입니다.

관리 도구는 여러 곳에서 값의 긴 목록을 유지 관리하기 만합니다.

목록 (200 개 이상 될 수 있음)은 GridView (페이지 A)에 표시되고 사용자가 항목에 대한 편집 버튼을 클릭하면 해당 항목을 편집 페이지로 가져와 페이지 B 값 (또는 값, 목록의 항목은 이름과 주소 및 선호하는 색, 고양이 번식과 같은 여러 값과 연결될 수 있습니다.)

현재 사용자가 페이지 B에서 "저장"을 누르면 우리는 다시 페이지 A로 이동합니다. 페이지가 목록의 맨 위에 열리면 순서대로 여러 항목을 함께 구성해야 할 필요가 있으므로 사용자를 괴롭 히며 사용자는 1. 편집 한 항목을 기억하고 2. 아래로 스크롤하여 해당 항목

내가 무엇을 원하는 순서대로 여러 항목을 함께 구성해야하므로 목록을 사용자가 방금 편집 한 항목으로 다시 가져올 수 있습니다.

가장 빠른 총 정지. . . 닷넷 3.5이 작업을 자동으로 수행

  • 유효한 점을 인정합니다 간주됩니다 "목록에 적은있다 있도록 항목을 재편성"을 (내게로 인정 간주됩니다의 라인에

    1. 제안을 계속 읽어 하지만 어쨌든 게시, 일부 다른 가난한 바보를 도울 수)
    2. 페이지 A를 다시로드하고이 지점으로 그리드를 스크롤 할 때 편집 된 항목의 ID를 게시하여이 작업을 수행 할 수 있다고 생각하지만 . . .

    내가 모르는 것을이 작업을 수행 할 수있는 기능이 있나요 (그리고 그것은 무엇을) 및/또는
    이 일의 접수 방법은 무엇입니까? 사전에

    덕분에 B. 걱정하는

  • 답변

    3

    이것은 앵커 태그를 사용하여 얻을 수 있습니다. 다시 페이지 A로 리디렉션 할 때이 항목은 항목 ID 그리고 175 것

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

    는 "# 추가 : 다음과 같은 페이지 A에서 당신 출력 할 요소는 다음 각 요소에 앵커 태그를 설정 URL의 끝에 위에 175은 "

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

    @WebDude, 감사,하지만 앵커 태그를 설정하면 해야한다 –

    1

    당신이 할 수있는 가장 간단한 방법은 페이지 B에 저장 한 후 다시 페이지 A로 리디렉션하는 동안 URL의 쿼리 문자열에서 페이지 B에서 다시 ID를 전달하는 것입니다.

    www.example.com/PageA.aspx?editedId=89

    PageAll의 PageLoad에서 HttpContext.Current.QueryStrubg [ "HttpContext.Current.QueryStrubg"에 유효한 값이 있는지 여부를 검사하여 편집 세부 정보 페이지에 있는지 확인할 수 있습니다. editedId "], 있다면, PageB에서 온 것입니다. 당신은 강조하거나 DataGrid를 쉽게

    가장 빠른 총 정지에 행을 선택하려면이 값을 사용할 수 있습니다. . . 계속 읽고 ...

    좋은 컨트롤을 사용하면 동일한 페이지, 예를 들어 PageA에서 여러 행을 동시에 편집하고 함께 저장할 수 있습니다. DataGrid에 대한 Telerik 컨트롤을 확인하십시오. 너는 그것을 좋아할 것이다.

    관련 문제