동일한 페이지에서 서버와 상호 작용하고 싶지만 양식을 제출한 후 다른 페이지로 전환하고 싶지 않은 경우가 있습니다. 다음은 양식을 제출하는 몇 가지 방법입니다.
코드 다음과 같습니다:
<form action="/hehe" method="post"> <input type="text" value="hehe"/> <input type="submit" value="upload" id="upload"/> </form>
이것은 HTML에서 가장 일반적이고 간단한 양식 제출 방법이지만 이 방법은 페이지를 전환해야 할 수도 있습니다. 때로는 동일한 페이지에서 서버와 상호 작용하고 싶을 수도 있습니다. 양식을 제출한 후 다른 페이지로 전환하고 싶지 않은 경우 어떻게 해야 합니까? 다음은 양식을 제출하는 몇 가지 방법입니다.
먼저 곡선을 통해 나라를 구하는 솔루션을 소개합니다. 위의 코드 조각은 변경할 필요가 없습니다.
코드는 다음과 같습니다.
<iframe id="uploadFrame" name="uploadFrame"></iframe>
target 속성을 target=uploadFrame 형식으로 추가합니다. target 속성은 iframe의 id 값(또는 name 속성의 값, 시도한 후에 알 수 있음)과 일치해야 합니다.
간단한 설명을 드리자면, 사실 여기의 양식은 제출 후 새로 고쳐지는데 왜 페이지로 이동되지 않나요? 사실 우리가 iframe에서 새로 고친 이유는 무엇입니까? iframe은 비어있는 것, 즉 비동기적인 느낌을 주는 것과 같습니다. 이것은 정통적인 방법은 아니지만, 나라를 구하는 방법이기도 합니다. 물론 이 방법은 많은 경우에 적용되지 않습니다. 예를 들어, 완성된 양식을 서버에서 검색한 후에는 이 방법이 작동하지 않을 것입니다. 여기서도 테이블을 실제로 비동기적으로 제출해야 합니다.
(2) jquery 비동기 양식 제출
jquery용 양식 제출 플러그인인 ajaxupload를 소개합니다.
코드는 비교적 간단합니다.
<body> <form action="/hehe" method="post"> <input type="text" value="hehe"/> <input type="button" value="upload" id="upload"/> <!--<input type="button" value="send" onclick="send()"/>--> </form> <script> (function(){ new AjaxUpload("#upload", { action: '/hehe', type:"post", data: {}, name: 'textfield', onSubmit: function(file, ext) { alert("上传成功"); }, onComplete: function(file, response) { } }); })(); </script> </body>
페이지 렌더링이 완료된 후 자체 실행 기능을 사용하여 업로드 ID가 있는 버튼에 비동기 업로드 이벤트를 추가합니다. AjaxUpload(id,object)는 바인딩 개체의 ID에 해당합니다. 두 번째 매개변수는 추가 데이터입니다. 이름은 임의로 지정할 수 있습니다. 첫 번째 매개변수 파일은 입니다. file name.ext는 파일의 접미사입니다. onComplete 함수의 경우 서버에서 반환된 데이터를 처리할 수 있습니다. 위는 두 개의 간단한 파일 업로드 클라이언트의 구현입니다.
HTML의 비동기 파일 업로드 샘플 분석에 대한 더 많은 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!