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对象了,示例如下,感兴趣的朋友可以参考下 立即下载

相关推荐

从412到200:一步步拆解瑞数6代jsvmp的cookie生成与验证流程

本文深入解析瑞数6代JSVMP的动态安全防护机制,详细拆解从412到200状态的cookie生成与验证流程。通过剖析JSVMP虚拟机核心机制、动态元数据解析及环境检测绕过策略,为逆向工程师提供实用的技术解决方案,帮助突破瑞数6代的高级防御体系。

weixin_30342209的博客 508

Ajax异步请求

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

sinat_41666219的博客 287

【ESP32-IDF笔记】20-配置以太网网络(W5500)

基于ESP32IDF和官方的ethernet驱动,配置W5500以太网驱动芯片,实现ESP32的有线网络

别看了,就这些信息 3474

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

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

CyrilのJava世界 4087

基于STM32F407标准库与SimpleFOC实现无刷电机2804位置闭环控制的实战解析

本文详细解析了基于STM32F407标准库与SimpleFOC算法实现2804无刷电机位置闭环控制的实战过程。通过硬件选型、速度闭环调试到位置环PID参数整定,提供了完整的工程实现方案和抗饱和策略,帮助开发者掌握高精度电机控制技术。

oauth7security的博客 918

【AI概念】迁移学习 vs. 域自适应 vs. 域泛化|定义、核心原理、数学表达、易混淆点与工程选择建议|实际案例、工程实现细节、未来研究趋势、实际应用场景

大家好,我是爱酱。本篇将会详细梳理迁移学习(Transfer Learning)、域自适应(Domain Adaptation)、域泛化(Domain Generalization)三大常被混淆的核心概念,结合数学公式、典型算法与实际应用场景,帮助你厘清它们的本质区别、联系与工程意义。 注:本文章含大量数学算式、详细例子说明及大量代码演示,大量干货,建议先收藏再慢慢观看理解。新频道发展不易,你们的每个赞、收藏跟转发都是我继续分享的动力!

AI人工智能爱酱~你的AI学习好帮手~ 2471

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

条码打印工具-Bartender的使用

文章目录1、安装Bartender1.解压安装包,可获得bartender2021版本和破解文本2. 双击“BarTender_2021_R1_Full_x64.exe”文件运行,勾选协议及软件安装设置3. 选择安装选项,自行选择勾选,点击Browser可更换软件安装路径4. 耐心等待软件安装完成,直接点击完成退出5. 此时会弹出提示需要激活许可证,先点击取消6. 接着将Crack夹中的“BarTend.exe”破解文件复制到软件安装目录中替换7. 再双击“serial.reg”导入注册,点击确定即可8.

暮紫的笔记本 1万+

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

mac(apple silicon)arm64安装spm12详细教程

3.下载matlab runtime R2023b for macOS (macA64),注意必须下载这个,只下载matlab是不可以的。默认安装目录是/Applications/MATLAB/MATLAB_Runtime/R2023b。注意最后的命令,路径根据自己的matlab_runtime安装位置进行调整,然后就可以安装成功了。5. 解压spm12.zip,解压后将文件夹拖到应用程序下(Applications)2.下载spm12,这个版本可兼容mac芯片!6.打开mac终端,输入。

weixin_62332001的博客 2025

腾讯2020 unreal虚幻面试题

解析一下,腾讯的unreal客户端面试题: 1.lua性能优化的方向 申请的内存,是造成卡顿的原因之一,在C++与lua交互中,如果参数或者返回值有类变量,那么这个变量不会再交互的栈中存放数据,而会通过申请内存,再指定在交互,这样就造成卡顿,因此可以通过把C++的对象的每个参数分开单独传递,可以解决问题,当时我们游戏改完这个问题后,整体提升了2帧。 其实,主要是Tick循环中,减少与C++的交互,需要的数据不要每帧都去拿,其次,经常拿的一些数据(比方说主角信息),可以做一个lua缓存,...

qq_17347313的博客 1万+

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

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

weixin_30831261的博客 893

微信支付开发之平台给用户转账到零钱的功能

请求消息中应包含商家批次单号、转账名称、appid、转账总金额、转账总笔数、转账openid、收款用户姓名等信息。批次已受理成功,若发起批量转账的30分钟后,转账批次单仍处于该状态,可能原因是商户账户余额不足等。【转账场景ID】 该批次转账使用的转账场景,如不填写则使用商家的默认场景,如无默认场景可为空,可前往“商家转账到零钱-前往功能”中申请。【转账总笔数】 一个转账批次单最多发起一千笔转账。【商家批次单号】 商户系统内部的商家批次单号,要求此参数只能由数字、大小写字母组成,在商户系统内部唯一。

程序员weixin_sodomany的博客 3453

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

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

weixin_33375360的博客 599

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

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

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

zhuyangxing的专栏 1880

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

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

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

weixin_30781107的博客 1489

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

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、付费专栏及课程。

余额充值