二.简单的dom操作

2.使用js的dom获取页面数据

由于ajax不使用form

而form具有自动收集数据的功能。

不使用form,就需要使用dom手写代码收集数据

①获得承载数据的元素对象

<input type="text" id="uname">

var obj=document.getElementById("uname ");

②通过这个元素对象获取/修改数据

1.input对象的数据,是使用value属性

obj.value="123";   设置

var res=obj.value; 获取

2.所有的双标签,使用innerHTML属性 获取/修改 数据

obj.innerHTML="123";设置

var res=obj.innerHTML 获取

③ES6的简化

ES6提出,可以使用元素的id直接代表整个元素的对象

所以,代码简化为如下

<input type="text" id="msg">

<h4 id="h"></h4>

h.innerHTML=msg.value;

④innerHTML详解

使用innerHTML可以动态给双标签添加内容

这里的内容,指可以添加其他元素

⑤事件

通过用户的行为来激发的操作,就是事件

onclick 单击

onblur 焦点移除事件,元素失去焦点,马上调用js

onfocus 获取焦点事件,元素获得焦点,马上调用js

1.名词解释三.ajax

①同步Synchronous

在一个任务进行时,不能开启其他任务

同步访问:浏览器在向服务器发送请求,只能等待服务器的响应,不能做其他事情

出现场合

1.地址栏输入url,访问页面

2.a标签的跳转

3.form提交

②异步Asynchronous

在一个任务开启时,可以同时进行其他任务

异步访问:浏览器向服务器发送请求时,用户还能在页面上做其他操作

出现场合

1.用户名注册的验证

2.百度的搜索建议

3.股票软件

2.什么是Ajax

Asynchronous  JavaScript  and  xml

异步的  js  和  xml(数据承载方式)

本质:使用js提供的异步对象XMLHttpRequest

异步的向服务器提交请求

并且接受服务器响应回来的数据

3.使用ajax

1.创建异步对象

2.创建请求

3.发送请求

4.接收响应数据

①创建异步对象

var xhr=new XMLHttpRequest();

②.创建请求

xhr.open(method,url,isAsyn);

xhr.open("get","http://127.0.0.1:8080/login",true);

method:请求的方法,注意必须是字符串的形式"get" "post"

url:请求的url,注意必须是字符串

isAsyn:是不是要使用异步,boolean值,true/false

③.发送请求

xhr.send(formdata);

注意,get方法,没有formdata请求主体

所以在使用get方法时,这里的参数可以不填写,也可以写null

④.绑定监听,接收响应数据

1.xhr.readyState属性

用于表示xhr对象的请求状态,一共5个状态

0:请求尚未初始化

1:  已经打开服务器连接,正在发送请求

2:接收响应头

3:接收响应主体

4:响应数据接收完毕

①服务器4.代参数的get方法

②ajax代码

xhr.open("get",url,true)

url="/demo/get_login?uname="+$uname+"&upwd="+$upwd

错误总结

1.跨域错误

使用ctrl+b打开页面,进行ajax连接

会出现跨域错误。要使用服务器开启页面的方式打开

http://127.0.0.1:8080/01_ajax.html

2.404,接口或者资源位置出错,前后台代码都需要排查

3.500 服务器代码错误,黑窗口会给你提示

4.不显示不报错----------一步一打桩

AJAX二的更多相关文章

  1. ajax二次封装之异步加载

    ajax二次封装之异步加载 ajax异步加载会导致在数据未加载回来就读取数据,然后出现数据为空的报错.在ajax封装时,将ajax直接改为同步,虽然可以解决报错,但是会导致页面渲染被阻塞,接口反应时间 ...

  2. 一、Ajax 二、JSON数据格式 三、Ajax+Jquery 四、分页的实现

    一.Ajax概述###<1>概述 ###<2>组成 以XMLHttpRequest为核心,发送Ajax请求和接收处理结果 以javascript为语言基础 以XML/JSON作 ...

  3. 谈谈Ajax(二)

    昨天还没有谈完,今天做一个了解. 首先还是以错误,来讲述. 一.AJax常见错误 Ajax常见的错误,除了昨天列举的之外.还有就是如下状态码: 405,请求类型错误,比如请求是POST,你却用GET, ...

  4. 初学Ajax(二)

    $.get()和$.post() .load()方法是局部方法,因为它需要一个包含元素的jQuery对象作为前缀.而$.get()和$.post()是全局方法,无须指定某个元素.对于用途而言,.loa ...

  5. jQuery Ajax 二次封装

    jQuery Ajax通用js封装 第一步:引入jQuery库 <script type="text/javascript" src="<%=path%> ...

  6. AJAX(二)-实现验证码异步验证功能

    案例实现效果 用户在前端输入验证码,按键收起触发异步验证,验证验证码的对错 前端代码 checkcode.jsp <%-- Created by IntelliJ IDEA. User: cxs ...

  7. AJAX(二):HTTP头部信息

    每个http请求和响应都会带有相应都头部信息,其中有的对开发人员有用,有的页没有什么用默认情况下,发送xhr请求的同时,还有发送下列头部信息 Accept:浏览器能够处理的内容类型 Accept-Ch ...

  8. Python之路Day20-Django一对一(多)以及Ajax

    上节内容回顾 问题一:Django请求生命周期 -> URL对应关系(匹配) -> 视图函数 -> 返回用户字符串-> URL对应关系(匹配) -> 视图函数 -> ...

  9. 前台jquery+ajax+json传值,后台处理完后返回json字符串,如何取里面的属性值?(不用springmvc注解)

    一.取属性值 前台页面: function select(id){ alert("hfdfhdfh"+id); $.ajax({ url:"selectByid.jsp& ...

随机推荐

  1. css3 文本控制自动换行

    text-overflow:ellipsis; white-space:nowrap; overflow:hidden;

  2. [Inno Setup] 执行程序,返回值不为0时提示用户

    procedure LoadPerfCounter(); var Ret : Integer; begin if Exec(ExpandConstant('{sys}') + '\lodctr.exe ...

  3. 计算2的n次幂htm代码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. 团队中的 Node.js 具体实践

    前天,我们公司前端团队的几个人一起去大搜车参加了芋头所组织的「搜车 Node Party」.这是我第一次参加与 Node.js 相关的线下聚会,如果不算「杭JS」的话. 聚会现场 这次聚会的主题全部是 ...

  5. ajax学习摘抄笔记

    2019独角兽企业重金招聘Python工程师标准>>> AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). A ...

  6. Vim Operations

    Vim有三种模式:输入模式.命令模式和末行命令模式. 输入模式用来输入文字,命令模式用来下达编排文件的操作指令,末行命令模式用来进行文件存档.离开编辑器等操作. 进入及离开 末行模式下: :w 保存当 ...

  7. 数学--数论--HDU 1098 Ignatius's puzzle (费马小定理+打表)

    Ignatius's puzzle Problem Description Ignatius is poor at math,he falls across a puzzle problem,so h ...

  8. 数学--数论--POJ 1061青蛙的约会 (扩展欧几里得算法)

    青蛙的约会 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事情,既没有问 ...

  9. 图论-网络流-最大流--POJ1273Drainage Ditches(Dinic)

    Drainage Ditches Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 91585   Accepted: 3549 ...

  10. HDU - 6187 (最大生成树) 最小生成树

    Destroy Walls Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others) ...