Ajax를 사용하여 페이지를 새로 고치지 않고 양식 제출을 구현하는 것은 프로젝트에서 자주 사용됩니다. 얼마 전, 저는 주로 iframe 프레임워크를 기반으로 새로 고침 없이 양식을 제출하는 몇 가지 다른 방법을 스승님께 배웠습니다. 이제 편집자는 여러분의 참고를 위해 스크립트 홈 플랫폼을 정리하고 공유했습니다
페이지를 새로 고치지 않고 양식 제출을 구현하기 위해 ajax를 사용하는 것은 프로젝트에서 자주 사용됩니다. 얼마 전, 저는 주로 iframe 프레임워크를 기반으로 새로 고침 없이 양식을 제출하는 몇 가지 다른 방법을 스승님께 배웠습니다. 이제 정리해서 모두와 공유했습니다.
첫 번째 유형:
(html 페이지)
HTML 코드클립보드에 콘텐츠 복사
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="utf-8"> <title>无刷新提交表单</title> <style type="text/css"> ul{ list-style-type:none;} </style> </head> <body> <iframe name="formsubmit" style="display:none;"> </iframe> <!-- 将form表单提交的窗口指向隐藏的ifrmae,并通过ifrmae提交数据。 --> <form action="form.php" method="POST" name="formphp" target="formsubmit"> <ul> <li> <label for="uname">用户名:</label> <input type="text" name="uname" id="uname" /> </li> <li> <label for="pwd">密 码:</label> <input type="password" name="pwd" id="pwd" /> </li> <li> <input type="submit" value="登录" /> </li> </ul> </form> </body> </html> (PHP页面:form.php) <?php //非空验证 if(empty($_POST['uname']) || empty($_POST['pwd'])) { echo '<script type="text/javascript">alert("用户名或密码为空!");</script>'; exit; } //验证密码 if($_POST['uname'] != 'jack' || $_POST['pwd'] != '123456') { echo '<script type="text/javascript">alert("用户名或密码不正确!");</script>'; exit; } else { echo '<script type="text/javascript">alert("登录成功!");</script>'; exit; }
두 번째 유형:
(html 페이지)
HTML 코드 클립보드에 콘텐츠 복사
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="utf-8"> <title>iframe提交表单</title> </head> <body> <iframe name="myiframe" style="display:none;" onload="iframeLoad(this);"></iframe> <form action="form.php" target="myiframe" method="POST"> 用户名:<input type="text" name="username" /><br/> 密 码:<input type="password" name="userpwd" /><br/> <input type="submit" value="登录" /> </form> <script type="text/javascript"> function iframeLoad(iframe){ var doc = iframe.contentWindow.document; var html = doc.body.innerHTML; if(html != ''){ //将获取到的json数据转为json对象 var obj = eval("("+html+")"); //判断返回的状态 if(obj.status < 1){ alert(obj.msg); }else{ alert(obj.msg); window.location.href="http://www.baidu.com"; } } } </script> </body> </html>
(PHP 페이지: form.php)
XML/HTML Code클립보드에 콘텐츠 복사
<?php //设置时区 date_default_timezone_set('PRC'); /* 返回的提交消息 status:状态 msg:提示信息 */ $msg = array('status'=>0,'msg'=>''); //获取提交过来的数据 $name = $_POST['username']; $pwd = $_POST['userpwd']; //模拟登录验证 $user = array(); $user['name'] = 'jack'; $user['pwd'] = 'jack2014'; if($name != $user['name']){ $msg['msg'] = '该用户未注册!'; $str = json_encode($msg); echo $str; exit; }else if($pwd != $user['pwd']){ $msg['msg'] = '输入的密码错误!'; $str = json_encode($msg); echo $str; exit; } $msg['msg'] = '登录成功!'; $msg['status'] = 1; $str = json_encode($msg); echo $str;
위 내용은 양식 제출 후 페이지를 새로 고치지 않고 HTML 기반 구현 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!