zoukankan      html  css  js  c++  java
  • ajax——提交form表单

    ajax(Asynchronous JavaScript and Xml):是前后端的通信技术,不是一门新的语言。实现的功能为局部刷新,传输数据格式只能为字符串

    使用ajax的大致步骤如下:

      1.首先解决兼容问题

      2.绑定事件监听函数

      3.连接服务器

      4.发送消息请求

    首先写好html部分

    账号:<input type = "text" id = "uname"><span id = "hint"></span>
    </br>
    成绩:<input type="text">

    根据html代码写一个简单的php服务

    <?php
     $db = ["tom","mary","jack"];
     $uname = $_REQUEST['uname'];
     $bool = false;
     foreach($db as $n){
        if($n === $uname){
          $bool = true;
          break;
         }
     }
     if($bool){
      echo "1";
     }else{
       echo "0";
    }
    ?>

    表单的提交方式有两种,分别为get和post

    先看看第一种GET请求

    var xhr = null;
    if(window.XMLHttpRequest){
      xhr = new XMLHttpRequest()  //其他浏览器
    }else{
      xhr = new ActiveXObject("Microsoft.XMLHTTP") //老版本的IE及以下
    }
    xhr.onreadystatechange = function(){
      if(xhr.readyState === 4){ //表示消息接受完成
         if(xhr.status === 200){  //是否为成功的响应
           console.log(xhr.responseText);
           tsxx(xhr.responseText)
         }else{
           console.log('接收到一个非成功的ajax响应' + xhr.status);
    }
    }
    }
    xhr.open("GET","03.php?uname="+unameval,true);
    xhr.send(null);  

    下面为POST请求

     在GET请求的第三步做修改,发送请求之前要设置请求头

    xhr.setRequestHeader("Content-type","application/json; charset=utf-8"); //json
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8"); //表单数据
    xhr.setRequestHeader("Content-type", "text/plain; charset=utf-8"); //纯文本
    xhr.setRequestHeader("Content-type", "text/html; charset=utf-8"); //HTML

       所以根据下面写的HTMLpost请求如下

    xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    xhr.send('stuName=' + uname + '&score=' + score)

    GET和POST请求使用的场合:

      GET:请求是为了查找资源,HTML表单数据仅用来帮助搜索;请求结果无持续副作用;收集的数据及HTML表单内的输入字段名总长不超过1024个字符

     POST:请求结果有持续的副作用,如在数据库添加新数据;要传送的数据不是采用7位的ASCII编码;表单收集的数据过长



      

  • 相关阅读:
    spring data jpa 自定义sql 左链接查询
    添加用户具有root权限
    windows rabbitmq 安装
    mongodb 启动
    windows 下杀死tomcat进程
    配置ZooKeeper集群11
    配置ZooKeeper集群
    jquery 上传回显图片预览
    Python internals: Symbol tables, part 1(转)
    Python 学习笔记
  • 原文地址:https://www.cnblogs.com/jrrrrr/p/9297691.html
Copyright © 2011-2022 走看看