初学ajax

ajax出现无疑改变了web应用:从开始的整体页面的刷新到局部页面的数据显示,不用刷新页面就可以与服务器交互;

初学ajax
1 function ajaxPost(data){
 2
 3 var xhr=new XMLHttpRequest();
 4 xhr.open("POST",url);
 5 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
 6 xhr.send(data)
 7
 8
 9
10
11
12 }

View Code

这段是现在ajax技术应用post的发送数据;真正的响应服务器的数据是在异步调用函数是发生的

function response(callback){
     var xml=new XMLHttpRequest();/*获取XMLHttpRequest对象*/
     xml.open("get",url,true);/*这里的open打开的是交互地址;接受三个参数;(第一个参数是指定http方法或动作,第二个请求地址,第三个是否异步)*/
     xml.onreadystatechange=callback;/*异步调用需要监听readystatechange事件*/
     xml.send();/*发送主体这里为空*/

}这里的两段代码其实都是差不多,只是发送和取得响应的区别;主要就是
要获取window.XMLHttpRequest对象;在Ie中他是一个ActiveX对象;可以模拟new XMLHttpRequest():
if(window.XMLHttpRequest=='undefined')
{
    window.XMLHttpRequest=function()
    {
        return new ActiveXObject('Microsoft.XMLHTTP');

    }

}

undefined

上面的代码看起来有点混乱这边在梳理一下:
/*先说ajax post发送数据,然后获取响应*/
function postDate(data,callback)
{
    var xml=new XMLHttpRequest();
    xml.open("method",url);/*这里的method是两种http方法:get||post*/
    xml.setRequestHeader("Content-Type","text/plain,charset=utf-8")/*post请求要去设置请求头;指定请求主题的MIME类型*/
    xml.onreadystatechange=function()
    {
        xml.readyState==4&&callback(xml.responseText)

    }
    xml.send(data);

}
/*get发送数据就改变一下发送方法;数据信息包含在请求地址*/

Original: https://www.cnblogs.com/isFinite-rs/p/6777829.html
Author: caibird_bg
Title: 初学ajax

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/610333/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • RAID级别

    常用选项 模式: 创建:-C 装配:-A 监控:-F 管理:-f, -r, -a < raiddevice> : /dev/md# < component-dev…

    Linux 2023年6月6日
    091
  • LeetCode-349. 两个数组的交集

    题目来源 题目详情 给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入: n…

    Linux 2023年6月7日
    083
  • 为知笔记迁移到印象笔记-从入门到放弃

    最新进展 已经放弃了,目前正在逐步把笔记迁移到本地,用icloud来同步。 为什么放弃迁移? 没有找到好的迁移方案,迁移过去文档不方便查找和使用 为什么放弃印象笔记? 1.主要使用…

    Linux 2023年6月14日
    090
  • redis 基于SpringBoot Reids 的工具类

    redis 基于SpringBoot Reids 的工具类 package com.mhy.springredis.utils; import org.springframewor…

    Linux 2023年6月7日
    0120
  • Go-goroutine

    进程和线程说明: (1)进程就是程序在操作系统中的一次执行过程,是系统进行资源分配和调度的基本单位。 (2)线程是进程的一个执行实例,是程序执行的最小单位,它是比进程更小的能独立运…

    Linux 2023年6月8日
    095
  • bash shell相关知识

    shell与bash 什么是shell ——以上图片摘自《鸟哥的Linux私房菜》 系统核心不能随意地被操作,所以就设计出了壳程序shell,一方面保护了系统核心,另一方面提供了人…

    Linux 2023年6月7日
    0115
  • centos安装torch==1.4.0与相关细节

    对于某些直接安装torch==1.4.0报错的情况(没错,就是我遇到了) 在网上查找了,大概的解决方法是先安装一个低版本的torch和torchvision, torchvisio…

    Linux 2023年6月7日
    0101
  • SQLI-LABS(Less-5)

    Less-5(GET-Double injection-Single Quotes-String) 打开 Less-5页面,可以看到页面中间有一句 Please input the…

    Linux 2023年6月6日
    085
  • linux系统编码修改

    查看当前系统默认采用的字符集locale 查看系统当前编码echo $LANG如果输出为:en_US.UTF-8 英文zh_CN.UTF-8 中文 查看系统是否安装中文字符集loc…

    Linux 2023年6月6日
    096
  • 【MQTT】在Linux使用MQTT上报温度到阿里云

    MQTT上报温度到阿里云 * – 前言 – iniparser配置文件 – cJSON – sqlite3数据库 – 流…

    Linux 2023年6月13日
    0107
  • Linux下无限期使用Navicat16

    原文链接:https://www.zhoubotong.site/post/79.htmllinux 下的数据库图形化工具比较好用的有dbeaver完全免费,相比navicat,我…

    Linux 2023年6月6日
    0146
  • 查询数据库表大小

    csharp;gutter:true;SELECTTABLE_NAME,DATA_LENGTH + INDEX_LENGTH,TABLE_ROWS,concat(round((DA…

    Linux 2023年6月7日
    091
  • SSM 集成 Freemarker 模板引擎

    在前后端分离的大趋势下,项目开发过程中,应尽量减少前端和后台的依赖和耦合,前端和后台尽可能采用 ajax 进行交互;但是全站 ajax,不利于网站 SEO,所以引入模板引擎,尽量减…

    Linux 2023年6月14日
    095
  • 应用实战:从Redis到Aerospike,我们踩了这些坑

    博客园 :当前访问的博文已被密码保护 请输入阅读密码: Original: https://www.cnblogs.com/duanxz/p/15878002.htmlAuthor…

    Linux 2023年5月28日
    0101
  • MySQL manager or server PID file could not be found!

    [root@centos var]# service mysqld stop MySQL manager or server PID file could not be found…

    Linux 2023年6月13日
    087
  • Linux 查看端口被占用

    端口被占用网上很多,这种频繁操作的命令容易忘记,写这边文章的目的主要是加深操作命令的印象, Liux 查看端口占用情况可以使用 lsof 和 netstat 命令。 lsof ls…

    Linux 2023年6月6日
    089
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球