Ajax返回的3个类型

Mac新手必看:手把手教你用终端命令把APFS格式的U盘改回ExFAT(附磁盘工具操作) 本文为Mac用户提供详细教程,指导如何将APFS格式的U盘安全转换为ExFAT格式,确保跨平台兼容性。涵盖终端命令和磁盘工具两种方法,帮助用户解决macOS Monterey及更高版本中默认APFS格式的限制问题,同时强调数据备份和操作安全。 阅读详情
使用Ajax异步返回的两种类型

Ajax = 异步 JavaScript 和 XML,Ajax 是一种用于创建快速动态网页的技术,通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新,传统的网页(不使用 Ajax)如果需要更新内容,必需重载整个网页面。看下图
在这里插入图片描述

传统的Ajax写法:
/**
 * @function 利用ajax动态交换数据(Text/HTML格式)
 * @param url   要提交请求的页面
 * @param jsonData  要提交的数据,利用Json传递
 * @param getMsg  这个函数可以获取到处理后的数据
 */
function ajax_demo(url,jsonData,getMsg)
{
    //创建Ajax对象,ActiveXObject兼容IE5,6
    var oAjax = window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
    //打开请求
    oAjax.open('POST',url,true);//方法,URL,异步传输
    //发送请求
    var data = '';//拼装数据
    oAjax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    oAjax.send(data);
    //接收返回,当服务器有东西返回时触发
    oAjax.onreadystatechange = function () {
        if(oAjax.readyState == 4 && oAjax.status == 200){
            var text = oAjax.responseText;
            //处理数据
        }
    }
}
使用jQuery使用:
function ajax_demo() {
        var form_data = '';
        $.ajax({
            type:'POST',
            url:'upload.do',
            data:form_data,
            cache : false,
            processData : false,
            contentType : false,
        }).success(function (data) {
            var result = JSON.parse(data);
            alert(result.back());
        }).error(function () {
            alert("上传失败!")
        });
    }

后端返回前端的3种类型

1、返回html(jsp)格式的数据,后端处理完后,直接返回一个页面。前端直接将的到HTML添加到页面就行了,

2、返回xml格式的数据

3、返回json格式的数据

解析HTML

HTML由一些普通的文本组成,如果服务器通过XMLHttpRequest对象来发送HTML,文本将存储在ResponseText属性中。不必从ResponseText属性中读取数据,因为它本身就是希望的数据格式,可以直接将它插入页面中。
插入HTML代码最简单的方法是更新这个元素的innerHTML属性。
优点:
(1)从服务器端发送的HTML代码在浏览器端不需要用JavaScript进行解析;
(2)HTML的可读性好。
(3)HTML代码与innerHTML属性搭配,效率高。
缺点:
(1)若需要通过Ajax更新一篇文档的多个部分,HTML不合适(2)innerHTML并非DOM标准。

解析XML
优点:

1)XML是一种通用的数据格式。
2)不必把数据强加到已定义好的格式中,而是要为数据自定义合适的标记。
3)利用DOM可以完全掌控文档。

缺点:

1)如果文档来自于服务器,就必须保证文档含有正确的首部信息,若文档类型不正确,那么requestXML属性将是空的。2)当浏览器接收到长的XML文件后,DOM解析可能会很复杂。

解析JSON

JSON是一种简单的数据格式,比XML更加轻巧。JSON 是JavaScript原生格式,这意味着在javascript中处理JSON数据不需要任何特殊的API或者工具包。JSON的规则很简单:对象是一个无序的 “名称/值”对集合,一个对象以“{”(左括号)开始,以“}”(右括号)结束,每一个名称后面跟一个“:”(冒号),名称/值之间用逗号分隔开。JSON用冒号而不是等号来赋值。每一条赋值语句用逗号分开。整个对象用大括号封装起来,可用大括号分级嵌套数据。对象描述中存储的数据可以是字符串,数字或布尔值,对象描述也可存储函数,即对象的方法。JSON只是一种文本字符串,它被存储在responseText属性中。为了读取存储在responseText属性中的JSON数据,需要用到javascript的eval()语句,eval函数会把一个字符串当做它的一个参数,然后这个字符串会被当做javascript代码来执行,因为JSON的字符串就是javascript代码构成的,所以它本身是可以执行的。JSON提供了json.js包后,使用parseJSON()方法可以将JSON对象解析为js对象。

优点:

(1)作为一种数据传输格式,JSON与XML很相似,但是它更加灵巧。
(2)JSON不需要从服务器端发送含有特定内容类型的首部信息。

缺点:

(1)语法过于严谨。
(2)代码不易读。
(3)eval函数存在风险。

注意:若从服务器端返回json字符串,则属性名必须使用双引号(需要转义),不能使用单引号。
AJAX如何接收JSON数据示例介绍 如何使用AJAX返回JSON数据,就是dataType,当你设置json后返回的json字符串传递到客户端就是JSON对象了,示例如下,感兴趣的朋友可以参考下 立即下载

相关推荐

软件工程大作业——图书管理系统/图书个性化推荐与实现系统

软件工程期末大作业,图书管理系统,包含ER图、程序流程图、属性图、结构图

2401_82857325的博客 3649

Ajax异步请求

Ajax,即Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术 ajax异步请求的方式共有两种:GET和POST一.GET方式请求步骤:1.创建XMLHttpRequest对象:xhr          //createXMLHttpRequest()函数的功能是为了创建XMLHttpRequest对...

sinat_41666219的博客 287

【Chisel】2.4 时序逻辑

2.4 时序逻辑@[TOC](2.4 时序逻辑)前言寄存器(`Reg`)实例Chisel的状态函数实例2 RegNext实例3 RegInit移位器附录 显式的时钟信号和复位信号 前言 没有状态机的逻辑电路是不完整的,没有状态机的逻辑电路是不完整的,没有状态机的逻辑电路是不完整的,重要的事情说三遍。 这一节我们将要学习Chisel中的时序逻辑。在最后我们会实现一个移位器。 这里你需要知道的是,前面的这几节实际上都是对Chisel的基础语法的学习,它并不会给你带来很大的“惊喜”。Chisel真正的作用是把电路

快乐学习小猪猪的博客 844

关于ajax请求方法到后台返回的数据类型处理

页面处理方案:(for(var i=0;页面处理方案:(for(i=0;页面处理方案:(for (var key in data) { })

CyrilのJava世界 4087

echarts如何实现3D饼图(环形图)?

自定义修改3D饼图的宽高和legend

i-cat的博客 1万+

VMware16虚拟机:下载和安装教程

VMware16 虚拟机 下载和安装教程

MQ0522的博客 20万+

ajax--返回值类型response

xml 暂空 json  function test2(){ xhr.open('POST','./4json.php',true); xhr.send(null); xhr.onreadystatechange = function(){ if (this.readyState==4) { // alert({name:'zhang',age:23});

东篱的博客 4769

《多模态融合改进》支持目标检测、目标分割、OBB、姿态估计,配置教程

本文以为例,讲解如何配置,支持替换专栏里所有的改进方式。

Limiiiing的博客 801

action怎么将json返回ajax,从MVC 3中的ActionResult类型方法将JSon数组返回到$ .ajax

我有一个TreeView帮助器,其中包含类别及其链接的列表。我做到了@helper TreeView(FavouriteLinksXmlMVC3.Controllers.HomeController cat){cat = new FavouriteLinksXmlMVC3.Controllers.HomeController();try{foreach(FavouriteLinksXmlMVC3....

weixin_29463881的博客 548

秋叶ComfyUI整合包使用FRP实现公网访问教程 ComfyUI内网穿透 秋叶整合包

最近在做 ComfyUI 的实验时,我发现很多小伙伴都遇到一个问题:本地启动的 ComfyUI 服务只能在本地访问,想要通过公网远程访问,就必须借助来实现。作为一名前端开发工程师,我花了点时间把 ComfyUI 启动器和 FRP 配置整合了一下,今天就分享给大家。本文适合已经了解。需要注意的是 穿透到公网的话任何人都能访问 为了安全建议看我另一篇帖子加上密码验证 防止恶意攻击。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 1351

电子电器架构 -- 汽车零部件DV试验与PV试验的定义及关键差异

电子电器架构 -- 汽车零部件DV试验与PV试验的定义及关键差异

Soly_kun的博客 734

ajax parsererror报错,jQuery为ajax请求返回“ parsererror”

我一直在从jquery收到针对Ajax请求的“ parsererror”,我尝试将POST更改为GET,以几种不同的方式(创建类等)返回数据,但我似乎无法弄清楚问题出在哪里。我的项目在MVC3中,我使用的是jQuery 1.5,我有一个Dropdown,并且在onchange事件上,我触发了一个调用,以根据所选内容获取一些数据。下拉列表:(这会从Viewbag的列表中加载“ Views”,并触发事...

weixin_30831261的博客 893

浏览器缓存导致代码不更新?一招解决部署后用户仍看到旧页面的问题

方案效果适用场景文件名哈希永久解决前端工程化项目HTTP缓存头控制精准控制需服务器权限Meta标签部分生效临时补救方案最佳实践:入口HTML禁用缓存,静态资源使用哈希文件名 + 长期缓存,达到「秒级更新」+「高性能」的平衡!

江拥羡橙的博客 810

jquery ajax parsererror,jQuery为ajax请求返回“ parsererror”

我一直在从jquery收到针对Ajax请求的“parsererror”,我尝试将POST更改为GET,以几种不同的方式(创建类等)返回数据,但是我似乎无法弄清楚问题出在哪里。我的项目在MVC3中,我使用的是jQuery 1.5,我有一个Dropdown,并在onchange事件上触发了一个调用,以基于所选内容获取一些数据。下拉列表:(这会从Viewbag的列表中加载“ Views”,并触发事件正常...

weixin_33375360的博客 599

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

jquery ajax 返回json 格式类型为string string 转json

今天在做项目的时候突然发现平时用的好好地,直接调用jquery ajax返回的对象的属性就可获得该属性值,结果竟然失败了,原来是因为返回类型的不是json格式也就是不是Object,而是string 。 于是转换吧,把string转换为json对象 /** * 根据id获取用户 * @param id */ function getUserById(id){ // alert(id);

zhuyangxing的专栏 1880

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ajax处理返回的三种格式(json格式 , xml通用格式 , html文本格式)(数据类型:整数、字符串、数组、对象)(基础最重要!)...

ajax方法的参数 常用的ajax参数比如url,data,type,包括预期返回类型dataType,发送到服务器的数据的编码类型contentType,成功方法,失败方法,完成方法。除了这些以外还有很多其他内置的参数 需要注意的是: 1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。 2.type: 要求为String类型的参数,请求方式(post或g...

weixin_30781107的博客 1489

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

ajax2新手入门教程,2分钟学会ajax 入门ajax必备

声明:ajax需要有一定的HTML 和js、jsquery基础这里是基于python3和django2.1.8实现的ajax例子原理图:原理解释:1.前端向后端发送ajax请求:必须写出你要请求的地址,请求的方式,请求的数据类型,这里一般为json格式2.django后端对前端发起的请求进行处理返回一个JsonResponse对象,数据格式为字典这里的处理函数要和1中的请求地址保持一致3.前端执行...

weixin_39837124的博客 540

ajax 失败textstatus,rails 3 jquery ajax调用与statusText失败:“parsererror”

在一个轨道3应用了最新的jQuery的轨道宝石“1.0.12”我试图从一个Ajax调用$.ajax({type: "POST",cache: false,url: url,data: data,error: function(jqXHR, textStatus, errorThrown){console.log(jqXHR);console.log(textStatus);console.log(...

weixin_31653971的博客 912

ajax IE parsererror,jQuery为ajax请求返回“parserror”

Been getting a "parsererror" from jquery for an Ajax request, I have tried changing the POST to a GET, returning the data in a few different ways (creating classes, etc.) but I cant seem to figure out...

weixin_31063029的博客 267

SpringMVC处理器方法返回值void ajax方式

1.引入jar包 2.编写方法 //处理器方法返回值void @RequestMapping("/first") public void doFirst(HttpServletResponse response) throws IOException { //要返回给浏览器的数据 List<String> li...

xuchangqi的博客 302

ajax child,ajax树及注意点

Ajax树的示例,如下所示:在Ajax树中,JSP页上的设置没什么可讨论的,重点在配置的Action上,该Action的返回值是“freemarker”类型,指向一个ftl文件,具体配置如下所示:/jsp/tree/ajaxDynamicTree.ftl这个action并不需要执行体,所以上面的method="AjaxQueryNodes"并没有意义,可有可无,返回到需要的result上就行了。示...

weixin_34277051的博客 270

jQuery的Ajax中dataType选项用于设置返回值类型

jQuery的Ajax中dataType选项用于设置返回值类型

gdfjhc的博客 526

Ajax异步刷新

[size=x-large][color=orange][b]Ajax异步刷新[/b][/color][/size] [color=red][b]一、Ajax获得String类型数据:[/b][/color][code="java"] function loadXMLDoc() { var xmlhttp; if (window.XMLHttpRequest) {/...

mohaiyong的专栏 151

Thinkphp3.2.3使用Ajax一定注意 数据返回

Thinkphp3.2.3使用Ajax一定注意 数据返回 $data = 'ok'; $this->ajaxReturn($data); 不能直接 echo $data; 转载于:https://www.cnblogs.com/xtmp/p/6186680.html

weixin_30508309的博客 832

ajax可以返回什么类型数据,Ajax返回数据类型

MVC中,如果从controller返回的不是一个html,而是一个文本,使用AJAX中如何获取?后台代码:public ActionResult UploadPicture(){return Content("ok");// return Content("{result:'" + imgMsg + "',url:'" + imgUrl + "'}"); //本行是反回json格式的字符}前台代...

weixin_42347324的博客 2750

jquery ajax教程第3课-使用ajax提交form表单(转)

本教程主要讲解如何使用jquery ajax提交form表单,正常html页面提交表单都会刷新页面,使用ajax提交form可以达到无刷新提交from表单。本实例使用java工程实现,ajax提交form表单核心代码如下:     function submitForm(){         $.ajax({                 type: "POST",            

seoppt的专栏 564
上一篇: Java SpringMVC 点击图片上传文件和文件的上传、下载
下一篇: 关于电商项目的购物车总结和购物车实现
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值