2011-08-24 4 views

답변

2

아? 단일 폼의 여러 제출 버튼은 모두 누를 때 전체 양식을 제출합니다 ... 제출 프로세스가 작동하는 방식을 재정의하지 않는 한 배수가 있다는 장점이 없습니다. 각 버튼이 자신의 영역 만 제출하기 때문입니다. 이 경우에는 단추를 제출하는 것조차하지 않고 제출을 처리 할 수있는 합계 JS 코드가있는 단추 만 있습니다.

여러 개의 양식은 데이터 수집의 개별 공간으로 각 페이지는 고유 한 제출 버튼을 가질 수 있지만 한 번에 하나씩 만 보낼 수 있습니다 (브라우저에 따라 다른 양식의 내용이 느슨해 질 수 있습니다).

혼란 스러울 것이므로 사용자 인터페이스 측면에서 특히 좋은 방법은 아닙니다.

진짜 질문은 당신이 무엇을하려고하는지 묻습니다.

+0

+1 진짜 질문을 알고 싶다! – Neil

+0

글쎄, 나는이 웹 페이지를 가지고 있는데, 사용자가 새로운 블로그 포스트를 보낼 때, 그는 그것을 클릭하여 제출하고, 사진 등의 일부 미디어를 추가하고 싶다면, 그것도 제출을 클릭한다. 여러 개의 양식 (블로그 게시물 용과 미디어 업로드 용) 또는 많은 제출 버튼이있는 양식 하나만 볼 수 있습니까? 더 나은 접근 방법이 될 수 있을까요? – dave

0

제출 단추 중 하나를 클릭하면 양식의 모든 필드가 전송됩니다. 모든 분야가 필요한지 아닌지를 확인하는 것입니다.

1

두 가지 방식이 다르게 적용되며 서로 선택하는 데는 적절한 이유가 있습니다. 한 페이지에

  • 여러 양식는 두 개의 서로 다른 위치에 데이터를 전송 할 수 있습니다. 일반적인 예는 한 위치로가는 페이지의 주요 초점 인 입력 양식과 일반 머리글/바닥 글의 일부로 나타나는 검색 양식을 갖는 것입니다. 이 모두는 별도의 장소에 가서 당신에게 폼 요소의 제출 세트에 서로 다른 목적을 제공 할 수있는 기능을 제공 전송 버튼을 적절한 <form/>

  • 여러 내에서만 HTML 양식 요소를 제출합니다. 예 : 하나의 폼에는 이름 속성을 가진 제출 버튼이 여러 개있을 수 있습니다. 즉, 서버 측에 조건부 로직을 추가하여 "계속", "뒤로"또는 "나중에 저장"이라고 말할 수 있습니다. 모두는 상위 태그 내의 양식 요소 만 참조합니다.

두 가지 메모는 다음과 같습니다. 1) 양식을 중첩 할 수 없습니다. 2) 원하는 경우이 JavaScript를 기본 동작을 변경할 수 있습니다. :)

편집 : (필요하지 않을 것 동안 현명한 선택을) 자바 스크립트없이하고 싶었던 경우에 당신이 만든 주석을 참조, 당신은 몇 가지주의 생각을하고 자신에게 양식을 보내고 POST을 유지할 수 있습니다. 매번 어떤 양식 버튼을 클릭했는지 확인 (맨 위 팁, 모두 똑같은 이름을 지정하십시오.) 할 수 있으며 유효성 검사 수행을 포함하여 수행해야 할 작업을 모두 수행 할 수 있습니다. 예 : '미디어 추가'를 누르면 업로드 된 미디어를 저장하고 숨겨진 입력으로 화면에 참조를 반환합니다. 그런 다음 사용자는 계속 다른 상자에 항목을 추가 할 수 있으며 완료되면 저장 버튼을 누르십시오. 그러면 모든 기본 저장 작업을 수행하고 업로드 된 파일을 묶습니다. 저장을 누르기 전까지 화면에 물건을 계속 추가 한 다음 저장 방법을 수행하고 감사 페이지 (또는 시나리오에 맞는 논리)로 리디렉션합니다. :)