• 技术文章 >web前端 >html教程

    HTML无刷新提交表单 - jerrylsxu

    2016-05-21 08:35:13原创478

    通常对于无刷新提交表单,我们都是运用ajax实现的。前段时间跟着老大了解到另一种无刷新提交表单的方法,是利用iframe框架实现的。现在整理出来分享给大家。

    第一种:

    (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 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 '';
        exit;
      }
      
      //验证密码
      if($_POST['uname'] != 'jack' || $_POST['pwd'] != '123456')
      {
        echo '';
        exit;
      } else {
        echo '';
        exit;
      }
      
      
    复制代码

    第二种:

    (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)

    复制代码
    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;
    复制代码

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:HTML无刷新提交表单 - jerrylsxu
    上一篇:css content之counter-reset、content-increment - Canrz 下一篇:angular的post传参后台php无法接收 - 范丁文
    Web大前端开发直播班

    相关文章推荐

    • html5元素的分类有哪些• web前端笔试题库之HTML篇• Web 开发精华文章集锦(jQuery、HTML5、CSS3)【系列二十七】_html/css_WEB-ITnose• javascript的浏览器对象• HTML中meta标签作用及属性总结 - Jesse131

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网