JQuery UI

推荐列表 站点导航

当前位置:首页 > jquery > JQuery UI >

AJAX_分享ajax的三种解析模式,一、Ajax中的JSON格式html代码

来源:网络整理  作者:wy  发布时间:2020-12-24 02:35
分享ajax的三种解析模式,一、Ajax中的JSON格式html代码:htmlbody input type=...

一、Ajax中的JSON格式

html代码:

<html> <body> <input type="button" value="Ajax"> <script> var btn = document.getElementById("btn"); btn.onclick = function(){ var xhr = getXhr(); xhr.open("post","10.php"); xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); /IT之家 IT之家 在客户端如何构建JSON格式 IT之家 IT之家 构建符合JSON格式的字符串 IT之家/ var user = '{"name":"zhangwuji","pwd":"123456"}'; xhr.send("user="+user); xhr.onreadystatechange = function(){ if(xhr.readyState==4&&xhr.status==200){ var data = xhr.responseText; /IT之家 IT之家 使用eval()函数进行转换 IT之家 IT之家 使用"()"将其包裹,eval()函数强制将其转换为JSON格式(javascript代码) IT之家 IT之家 不使用"()"将其包裹,eval()函数将其识别为一个空的代码块 IT之家/ var json = eval("("+data+")"); console.log(json); } } } function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; } </script> </body> </html>

PHP代码:

<?php // 接收客户端发送的请求数据 $user = $_POST['user']; // 就是一个JSON格式的string字符串 //var_dump($user); $json_user = json_decode($user,true); //var_dump($json_user['name']); $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; //var_dump(json_decode($json)); // 响应数据符合JSON格式的字符串 // 1. 手工方式构建 //echo '{"name":"zhouzhiruo","pwd":"123456"}'; // 2. 使用json_encode()函数 echo json_encode($json_user); ?>

二    Ajax中的XML格式

html页面:

<html> <body> <input type="button" value="Ajax"> <script> var btn = document.getElementById("btn"); btn.onclick = function(){ // 实现Ajax的异步交互 var xhr = getXhr(); xhr.open("post","07.php"); xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); /IT之家 IT之家 如何构建符合XML格式的请求数据 IT之家 IT之家 注意 IT之家 IT之家 请求数据的格式 - key=value 不能改变的 IT之家 IT之家 将value值构建成符合XML格式的数据 IT之家 IT之家 数据类型 - 字符串(string) IT之家 IT之家 格式符合XML的语法要求 IT之家 IT之家 编写注意 IT之家 IT之家 定义变量 - 专门构建XML格式的数据 IT之家 IT之家 在send()方法进行拼串 IT之家/ var user = "<user><name>zhangwuji</name><pwd>123456</pwd></user>"; xhr.send("user="+user); xhr.onreadystatechange = function(){ if(xhr.readyState==4&&xhr.status==200){ // 接收服务器端的响应数据 var xmlDoc = xhr.responseXML; var nameEle = xmlDoc.getElementsByTagName("name")[0]; var txtEle = nameEle.childNodes[0]; console.log(txtEle.nodeValue); } } } function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; } </script> </body> </html>

PHP页面代码:

<?php // 接收客户端发送的请求数据 $user = $_POST['user'];//符合XML格式要求的string类型 //var_dump($user); // 创建DOMDocument对象 $doc = new DOMDocument(); // 调用loadXML()方法 $result = $doc->loadXML($user); //var_dump($doc); // 如何构建符合XML格式的数据 /IT之家 修改响应头的Content-Type值为"text/xml" header('Content-Type:text/xml'); echo $user;// 符合XML格式的string类型 IT之家/ header('Content-Type:application/xml'); echo $doc->saveXML(); ?>

三   Ajax中的HTML格式

HTML页面:

<html> <body> <select> <option>请选择</option> <option>山东省</option> <option>辽宁省</option> <option>吉林省</option> </select> <select> <option>请选择</option> </select> <script> /IT之家 IT之家 需要思考哪些事情? IT之家 IT之家 在什么时候执行Ajax的异步请求? IT之家 IT之家 当用户选择具体的省份信息时 IT之家/ // 1. 为id为province元素绑定onchange事件 var provinceEle = document.getElementById("province"); provinceEle.onchange = function(){ // 清空 var city = document.getElementById("city"); var opts = city.getElementsByTagName("option"); for(var z=opts.length-1;z>0;z--){ city.removeChild(opts[z]); } if(provinceEle.value != "请选择"){ // 2. 执行Ajax异步请求 var xhr = getXhr(); xhr.open("post","06.php"); xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xhr.send("provcince="+provinceEle.value); xhr.onreadystatechange = function(){ if(xhr.readyState==4&&xhr.status==200){ // 接收服务器端的数据内容 var data = xhr.responseText; // data是字符串,转换为数组 var cities = data.split(","); for(var i=0;i<cities.length;i++){ var option = document.createElement("option"); var textNode = document.createTextNode(cities[i]); option.appendChild(textNode); city.appendChild(option); } } } } } // 定义创建XMLHttpRequest对象的函数 function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; } </script> </body> </html>

php页面:

<?php // 用于处理客户端请求二级联动的数据 // 1. 接收客户端发送的省份信息 $province = $_POST['provcince']; // 2. 判断当前的省份信息,提供不同的城市信息 switch ($province){ case '山东省': echo '青岛市,济南市,威海市,日照市,德州市'; break; case '辽宁省': echo '沈阳市,大连市,铁岭市,丹东市,锦州市'; break; case '吉林省': echo '长春市,松原市,吉林市,通化市,四平市'; break; } // 服务器端响应的是字符串 ?>

以上内容是小编给大家分享ajax的三种解析模式,希望大家喜欢。

相关热词: HTML 解析

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jq/ui/8419.shtml

最新文章
django 项目怎么创建超级用 django 项目怎么创建超级用

时间:2020-12-19

热门文章
django 项目怎么创建超级用户 django 项目怎么创建超级用户

时间:2020-12-19

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

AJAX_分享ajax的三种解析模式,一、Ajax中的JSON格式html代码

2020-12-24 编辑:wy

一、Ajax中的JSON格式

html代码:

<html> <body> <input type="button" value="Ajax"> <script> var btn = document.getElementById("btn"); btn.onclick = function(){ var xhr = getXhr(); xhr.open("post","10.php"); xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); /IT之家 IT之家 在客户端如何构建JSON格式 IT之家 IT之家 构建符合JSON格式的字符串 IT之家/ var user = '{"name":"zhangwuji","pwd":"123456"}'; xhr.send("user="+user); xhr.onreadystatechange = function(){ if(xhr.readyState==4&&xhr.status==200){ var data = xhr.responseText; /IT之家 IT之家 使用eval()函数进行转换 IT之家 IT之家 使用"()"将其包裹,eval()函数强制将其转换为JSON格式(javascript代码) IT之家 IT之家 不使用"()"将其包裹,eval()函数将其识别为一个空的代码块 IT之家/ var json = eval("("+data+")"); console.log(json); } } } function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; } </script> </body> </html>

PHP代码:

<?php // 接收客户端发送的请求数据 $user = $_POST['user']; // 就是一个JSON格式的string字符串 //var_dump($user); $json_user = json_decode($user,true); //var_dump($json_user['name']); $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; //var_dump(json_decode($json)); // 响应数据符合JSON格式的字符串 // 1. 手工方式构建 //echo '{"name":"zhouzhiruo","pwd":"123456"}'; // 2. 使用json_encode()函数 echo json_encode($json_user); ?>

二    Ajax中的XML格式

html页面:

<html> <body> <input type="button" value="Ajax"> <script> var btn = document.getElementById("btn"); btn.onclick = function(){ // 实现Ajax的异步交互 var xhr = getXhr(); xhr.open("post","07.php"); xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); /IT之家 IT之家 如何构建符合XML格式的请求数据 IT之家 IT之家 注意 IT之家 IT之家 请求数据的格式 - key=value 不能改变的 IT之家 IT之家 将value值构建成符合XML格式的数据 IT之家 IT之家 数据类型 - 字符串(string) IT之家 IT之家 格式符合XML的语法要求 IT之家 IT之家 编写注意 IT之家 IT之家 定义变量 - 专门构建XML格式的数据 IT之家 IT之家 在send()方法进行拼串 IT之家/ var user = "<user><name>zhangwuji</name><pwd>123456</pwd></user>"; xhr.send("user="+user); xhr.onreadystatechange = function(){ if(xhr.readyState==4&&xhr.status==200){ // 接收服务器端的响应数据 var xmlDoc = xhr.responseXML; var nameEle = xmlDoc.getElementsByTagName("name")[0]; var txtEle = nameEle.childNodes[0]; console.log(txtEle.nodeValue); } } } function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; } </script> </body> </html>

PHP页面代码:

<?php // 接收客户端发送的请求数据 $user = $_POST['user'];//符合XML格式要求的string类型 //var_dump($user); // 创建DOMDocument对象 $doc = new DOMDocument(); // 调用loadXML()方法 $result = $doc->loadXML($user); //var_dump($doc); // 如何构建符合XML格式的数据 /IT之家 修改响应头的Content-Type值为"text/xml" header('Content-Type:text/xml'); echo $user;// 符合XML格式的string类型 IT之家/ header('Content-Type:application/xml'); echo $doc->saveXML(); ?>

三   Ajax中的HTML格式

HTML页面:

<html> <body> <select> <option>请选择</option> <option>山东省</option> <option>辽宁省</option> <option>吉林省</option> </select> <select> <option>请选择</option> </select> <script> /IT之家 IT之家 需要思考哪些事情? IT之家 IT之家 在什么时候执行Ajax的异步请求? IT之家 IT之家 当用户选择具体的省份信息时 IT之家/ // 1. 为id为province元素绑定onchange事件 var provinceEle = document.getElementById("province"); provinceEle.onchange = function(){ // 清空 var city = document.getElementById("city"); var opts = city.getElementsByTagName("option"); for(var z=opts.length-1;z>0;z--){ city.removeChild(opts[z]); } if(provinceEle.value != "请选择"){ // 2. 执行Ajax异步请求 var xhr = getXhr(); xhr.open("post","06.php"); xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xhr.send("provcince="+provinceEle.value); xhr.onreadystatechange = function(){ if(xhr.readyState==4&&xhr.status==200){ // 接收服务器端的数据内容 var data = xhr.responseText; // data是字符串,转换为数组 var cities = data.split(","); for(var i=0;i<cities.length;i++){ var option = document.createElement("option"); var textNode = document.createTextNode(cities[i]); option.appendChild(textNode); city.appendChild(option); } } } } } // 定义创建XMLHttpRequest对象的函数 function getXhr(){ var xhr = null; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject("Microsoft.XMLHttp"); } return xhr; } </script> </body> </html>

php页面:

<?php // 用于处理客户端请求二级联动的数据 // 1. 接收客户端发送的省份信息 $province = $_POST['provcince']; // 2. 判断当前的省份信息,提供不同的城市信息 switch ($province){ case '山东省': echo '青岛市,济南市,威海市,日照市,德州市'; break; case '辽宁省': echo '沈阳市,大连市,铁岭市,丹东市,锦州市'; break; case '吉林省': echo '长春市,松原市,吉林市,通化市,四平市'; break; } // 服务器端响应的是字符串 ?>

以上内容是小编给大家分享ajax的三种解析模式,希望大家喜欢。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jq/ui/8419.shtml

相关文章

风云图片

推荐阅读

返回JQuery UI频道首页