二.简单的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. 使用宝塔面板部署tp5网站

    来源:https://www.cnblogs.com/e0yu/p/9102902.html 遇到一个问题,就是当thinkphp5部署在宝塔面板上,会出现这个问题: 参考解决办法: http://w ...

  2. C#多线程(16):手把手教你撸一个工作流

    目录 前言 节点 Then Parallel Schedule Delay 试用一下 顺序节点 并行任务 编写工作流 接口构建器 工作流构建器 依赖注入 实现工作流解析 前言 前面学习了很多多线程和任 ...

  3. js 实现图片瀑布流效果,可更改配置参数 带完整版解析代码[waterFall.js]

    前言:         本人纯小白一个,有很多地方理解的没有各位大牛那么透彻,如有错误,请各位大牛指出斧正!小弟感激不尽.         本篇文章为您分析一下原生JS实现图片瀑布流效果 页面需求 1 ...

  4. 《图解 HTTP》 摘要一

    学习过程对书本的内容的摘要以及总结,逐步完善,带有个人理解成分. Web 及网络基础 使用 HTTP 协议访问 Web 客户端:通过获取请求获取服务资源的 Web 浏览器等 HTTP 全称:Htype ...

  5. php private学习笔记

    类的权限修饰符,放在属性/方法的前面.用来说明属性/方法的权限特点. 三种权限修饰符 private  私有的 public   公共 protected  保护的 privata 的属性.方法只能在 ...

  6. 如何理解Java的值传递

    结论 为了加深印象,先把结论放在文章开头. ++Java中只有值传递++. 形参与实参 在理解Java的值传递 实参Argument 实际参数,主调用函数传递给调用函数的参数 形参Parameter ...

  7. 微信Webapp开发的各种变态路由需求及解决办法!

    前言 最近在使用BUI Webapp开发的一个小商城项目在微信上遇到一些坑及变态需求, 层层深入, 整理一下给后来人参考. 一定有你还不知道的! 调试缓存 问题描述: 微信打开的web页面默认是会缓存 ...

  8. Linux 下如何产生core文件(core dump设置)

    转自:https://blog.csdn.net/star_xiong/article/details/43529637 今天在Linux下调试C程序时,出现段错误,习惯性的ls下当前目录,发现没有生 ...

  9. muduo网络库源码学习————条件变量

    muduo里的CountDownLatch类实际上是对条件变量condition进行的封装,既可以用于所有子线程等待主线程发起 "起跑" ,也可以用于主线程等待子线程初始化完毕才开 ...

  10. 重新认识Java注解

    重新认识Java注解 今天Debug看源码的时候,无意间看到这么个东西 首先承认我的无知,看到这个我很惊诧. 也勾起了我的好奇心,于是有了这篇认知记录. 下面就来重新认识下注解吧! 注解的本质 关于运 ...