2010-07-19 3 views
1

기본적으로 하나의 동적 페이지가 포함 된 웹 사이트가 있습니다. 정상적인 작동에서는 사용자가이 페이지를 떠나지 않아야합니다. 그래도 특정 오류를 처리 /보고하려면 오류 페이지로 리디렉션해야합니다. 따라서 오류 페이지에서 이전에 열려 있던 모든 동적 내용을 다시 작성하는 데 필요한 정보를 응용 프로그램에 제공하는 일반 페이지로 되돌아가는 링크를 제공하려고합니다.양식 제출시 ASP.NET MVC 및 jQuery를 사용하여 컨트롤러에 동적 데이터 전달

자바 스크립트로 쿼리 문자열을 구문 분석하고 동적 콘텐츠를 다시로드하여 페이지를 다시 작성할 수 있다고 생각합니다. 이것이 최선의 방법인지 잘 모르겠지만 작동시키고 있습니다. 쿼리 문자열의 숫자는 기본적으로 콘텐츠 섹션의 ID의를 표시

MySite/MyController/MyAction?1,5,8,9 

document.ready에있는로드 : 그래서 내 오류 페이지에 링크 HREF는 같을 필요가있다.

저는이 링크를 생성하는 방법을 고수했습니다. 어떻게 든 컨트롤러에이 숫자를 전달해야한다고 생각하기 때문에 컨트롤러는 오류보기로 전달하여 "뒤로"링크를 생성합니다.

using (Html.BeginForm("MyAction", "MyController", 
         FormMethod.Post, 
         new { enctype = "multipart/form-data" })) 

         { /* ... */ } 

내가 다음 양식에 jQuery를 .submit() 방법을 호출하는 버튼이 있습니다

나는 파일을 업로드하기위한 표준 HTML 양식을 가지고있다.

폼을 제출하는 버튼을 클릭 할 때 컨트롤러에 액세스 할 수 있도록 어떻게 추가 데이터를 첨부 할 수 있습니까?

희망 사항은 분명하지 않으며 알려 주시면 자세히 설명 드리겠습니다. 감사.

편집 : 양식에 숨겨진 필드와 함께이 정보를 제출할 수있는 것으로 나타났습니다. 내가 더 나은 방법을 찾을 수 없다면 시도해 보겠다. 그러나 페이지에 양식이 여러 개 있고 이상적으로이 데이터를 모든/모든 것에 사용할 수 있기를 원한다면 좀 더 일반적인 해결책을 원한다. 그들.

답변

1

url은 Html.BeginForm 태그가 아닌 .submit()을 사용하여 양식을 전송하기 전에 바이어스해야합니다. 여기에서 문제가 보이지 않습니다 ... 정확히 무엇을 처리하고 있습니까?

+0

I 제출 메서드에서 URL을 지정할 수 있다고 생각하지 마십시오. 제발 더 설명해 주시겠습니까? – fearofawhackplanet

1

나는 이것이 당신이 요구 한 것이 아니라 처음에 사용자를 리디렉션하는 번거 로움을 피하는 대신 iFrame이 포함 된 모달 창 (jquery 기반)을 표시하지 않는 이유를 알고 있습니다. iFrame href는 호출 페이지에서 확인할 수 있으며 오류 페이지를 표시 할 수 있습니다.

이 방법이 도움이되는지 확신 할 수 없지만이 기술을 사용하여 사용자가 처음 시작한 곳으로 사용자를 돌려 보낼 때 걱정할 필요가없는 것으로 나타났습니다. 이 외에도 호출 페이지에있는 그대로 원본 컨텐츠를 다시 작성/다시로드 할 필요가 없습니다. 귀하의 의견을 읽은 후

**** 편집 **** 어쩌면 당신은 링크 클릭에 다음과 같은 ...

  1. 을 할 수 - iframe을 가리키는 모달 팝업을 엽니 다.
  2. iframe은 컨트롤러에서 파일을 다운로드하기 위해 작업을 호출합니다.
  3. 보기에서 '파일 다운로드 중입니다 ... 기다려주세요. 닫으려면 여기를 클릭하십시오.가 iframe을 모달 팝업 내에있는 "작업이 발생
  4. 경우 오류는 정상적으로 오류 페이지로 리디렉션합니다.

현재 호출 페이지를 떠날 필요가없는이 길을.

+0

그건 내 선호하는 접근 방식이지만, 가능하지 않다고 생각합니다. 사실 저는 제 질문에 약간의 실수를했습니다. 폼에 ajaxing. 왜 내 새로운 오류 페이지 표시 이유를 설명하는 내 이전 질문을 참조하십시오 : http://stackoverflow.com/questions/3229280/asp-net-mvc-how-can-i-return-an -error-from-a-file-download-action-without-le aving – fearofawhackplanet

+0

기본적으로 "파일 다운로드"링크가 있습니다. 오류가 발생하면 오류를 어떻게 든 표시하고 싶습니다. 오류가 발생하지 않으면 파일을 다운로드 할 수 있습니다. – Rippo

+0

맞습니다. 새 페이지에 오류를 표시해야하는 경우 이전 페이지를 오류 이전 상태로 효과적으로 복구하는 링크가 필요합니다. 필자의 이전 질문은 정적 링크가 아닌 파일 브라우저 대화 상자 (양식)를 사용함에 따라 다소 단순화되었지만 유의하십시오. – fearofawhackplanet

관련 문제