2014-09-05 5 views
0

이것은 매우 일반적인 질문이지만 제 경우에는 ASP와 C#으로 작업하고 있습니다.여러 페이지에 매개 변수 전달

페이지 : 1 :

이 HTML을 선택, 클래스 nameSelect, surnameSelect와 모두 나는 다음과 같은 상황이있다. 사용자가 이러한 선택 항목 중 하나를 변경하면 hfNamehfSurname이라는 숨겨진 필드에 값을 넣습니다. 그런 다음 상세한보기로 갈 수있는 버튼을 클릭하면 javascript로 링크를 생성하고 GET을 통해 &name=111&surname=222을 전달합니다.

2 페이지 : hfNamehfSurname :

이미 나는 두 개의 숨겨진 필드가 있도록 매개 변수이 페이지에서 통과 할 수있는 것을 알고있다. GET에서 값을 검색하고 사용자가 사이트 이동 경로로 돌아 가면 &name=111&surname=222으로 이전 페이지로 사용자를 되돌려 보내고 선택 항목을 이전 값으로 자동 설정합니다.

정상 상황 : 매개 변수가 문제가되지 않습니다, 그래서 정상적인 상황 2 페이지에서

콘텐츠에 대한 매개 변수로 name 또는 surname를 사용하지 않을 것입니다. 페이지 2에도 nameSelectsurnameSelect이라는 두 개의 선택이 있으면 문제가되지 않습니다. 사용자는 페이지 2에서이 값을 변경할 수 있으며 페이지 1로 돌아 가면 값을 업데이트 할 수 있습니다. 333444.

문제 : 나는 동시에 name의 여러 버전을 통과해야 할 때

주요 문제가 발생합니다. 이는 2 페이지가 사람 목록이므로 행을 클릭하면 name 매개 변수를 전달해야 할 수 있습니다 (예를 들어 기억하십시오). 즉, 페이지 1로 돌아 가면 name 값이 설정되지만 select에서 선택했기 때문에가 아니라 2 페이지의 단추를 클릭했기 때문이 아님을 의미합니다. name 매개 변수의 범위가 행은 세부 정보 페이지에만 있습니다 (3 페이지).

가능한 솔루션

내가 예를 들어 콘텐츠를 사용하지 않는 매개 변수 전에 키워드를 추가했다 생각 첫 번째 솔루션 filterNamefilterSurname. 이는 때로는 name/surname 값을 콘텐츠에 사용하기를 원하기 때문에 자체 문제를 만듭니다. 믹스를하고 가끔씩 filterNamesurname을 입력하면 다른 이름을 가진 여러 매개 변수가 있기 때문에 관리가 매우 어려워집니다.

여기에 실종 된 몇 가지 확실한 해결책이 있습니까? 아니면 이미 시스템을 만들었는데 시스템을 만들 수없는 것입니까?

덕분에 내가이 설정 존재하지 않는 경우, 세션 데이터를 체크하는 기본 설정으로 클래스를 생성하고 밖으로 여기에서 다음 세션에 저장하려는 댓글에서 언급 한 바와 같이

+1

내가 뭘 제안 할 것입니다 ** 클래스 (DTO 개체) ** 귀하의 요구 사항에 따라 속성을 정의하고 매개 변수 ** 전달 ** 대신 ** ** 사용하여 매개 변수로 전달 –

답변

0

그것이 세션의 값을 사용한다면 그것은 새로운 클래스에 적용됩니다.

가져 오기 또는 게시가 중요하지 않습니다. 그런 다음 클래스를로드 한 페이지로드에 코드를 넣은 다음 get 또는 post 변수를 통해 클래스를 업데이트 한 다음 다시 세션에 저장합니다.

관련 문제