美文网首页
2019-08-23 ajax , xml ,json

2019-08-23 ajax , xml ,json

作者: 棘菀 | 来源:发表于2019-08-23 17:04 被阅读0次

XML

可扩展的标记语言

php执行结果有中文 必须在php闻不见顶部设置

header("content type:text/html; charset=utf-8")

如果php中需要返回XML数据 也必须在php顶部设置
header("Content-type:text/html; Charset=utf-8");


php获取xml数据

html部分

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="ajax封装.js"></script>
</head>

<body>
    <button>发送请求</button>
    <script>
        window.onload = function(ev) {
                var oBtn = document.querySelector('button');
                oBtn.onclick = function(ev1) {
                    ajax({
                        type: "get",
                        url: "11-ajax.php",
                        data: {
                            userName: "xml"

                        },
                        success: function(xhr) {
                            var res = xhr.responseXML
                            console.log(res.querySelector("name").innerHTML)
                            console.log(res.querySelector("age").innerHTML)

                        },
                        timeout: 3000,
                        error: function(xhr) {
                            console.log(xhr.status)
                        }
                    })
                }
            }
            /*header('Content-type: text/xml'); 获取不到xml文件的。。。。修改*/
    </script>
</body>

</html>

php部分

<?php
header("Content-type:text/xml; Charset=utf-8");
//获取文件
$file =  file_get_contents("11-ajax.xml");

echo $file;


?>
<?xml version="1.0" encoding="UTF-8" ?>

<dog>
//标签随意起名
    <name>临安将</name>
    <age>38</age>
</dog>

XML练习

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        
        div {
            width: 300px;
            height: 300px;
            border: 1px solid #000;
            margin: 50px auto;
            text-align: center;
            background-color: skyblue;
        }
        
        img {
            width: 200px;
            height: 200px;
            display: block;
            margin: 10px auto 10px;
            border: 1px solid #000;
        }
        
        p {
            text-align: center;
            background: pink;
        }
    </style>
    <!---->
    <script src="ajax封装.js"></script>
    <script src="../jquery-3.4.1.js"></script>
    <script>
        $(function(ev) {
            $("button").click(function(ev1) {
                var self = this;
                ajax({
                    type: "post",
                    url: "xml-test.php",
                    data: {
                        "name": $(this).attr("name")
                    },
                    timeout: 3000,
                    success: function(xhr) {
                        var name = $(self).prop("name");

                        var res = xhr.responseXML;
                        var title = res.querySelector(name + ">title");
                        var image = res.querySelector(name + ">image");
                        var deg = res.querySelector(name + ">deg");

                        $("#title").html(title.innerHTML)
                        $("img").attr("src", image.innerHTML)
                        $("#deg").html(deg.innerHTML)
                    },
                    error: function(xhr) {
                        alert(xhr.status)
                    }
                })
            })
        })
    </script>
</head>

<body>

</body>
<div>
    <p id="title"> 商品标题名称</p>
    <img src="" alt="">
    <p id="deg">商品描述信息</p>
    <button name="nz">女装</button>
    <button name="bb">包包</button>
    <button name="tx">拖鞋</button>
</div>

</html>

----优化了字符串中可能存在 " | " 分隔符的问题


JSON

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="ajax封装.js"></script>
</head>

<body>
    <button>发送请求</button>
    <script>
        window.onload = function(ev) {
                var oBtn = document.querySelector('button');
                oBtn.onclick = function(ev1) {
                    ajax({
                        type: "get",
                        url: "12-ajax-json.php",
                        data: {
                            userName: "xml"

                        },
                        success: function(xhr) {
                            var str = xhr.responseText;
                            var obj = JSON.parse(str);
                            console.log(obj.name);
                            console.log(obj.age);
                            /*在第八按本的ie中 我们不可以使用js原生的JSON.parse方法  但是可以使用json2.js这个框架来写  去github上下载就行*/
                        },
                        timeout: 3000,
                        error: function(xhr) {
                            console.log(xhr.status)
                        }
                    })
                }
            }
            /*header('Content-type: text/xml'); 获取不到xml文件的。。。。修改*/
    </script>
</body>

</html>

相关文章

  • 2019-08-23 ajax , xml ,json

    XML 可扩展的标记语言 php执行结果有中文 必须在php闻不见顶部设置 如果php中需要返回XML数据 也必...

  • ajax中的xml和json

    ajax中的xml 1.请求的数据格式-XML 2.响应的数据格式-XML ajax中的json 一、json 1...

  • H5-12.29Ajax与jquery、xml、json

    四、Ajax的XML 1.请求的数据格式-XML 2.响应的数据格式-XML 五、json JSON - java...

  • AJAX

    1、创建AJAX请求 2、Json写法 3、XML写法

  • 12_django_ajax

    AJAX 一、什么是ajax? 异步的JavaScript和xml,跟后台交互,都用json 二、ajax干啥用的...

  • nodejs

    $.ajax({url:'地址?'key=val&...,dataType:'json/xml..',cache:...

  • AJAX的原理是什么?

    AJAX 就是异步的 JS 和 XML 的缩写,目前我们一般用 JSON 代替 XML。 AJAX 主要用于在不刷...

  • AJAX基础

    ### AJAX是什么 AJAX =异步JavaScript和XML(json)。通过在后台与服务器进行少量数据交...

  • web前端面试点整理(持续更新)

    Ajax Ajax:是对现有技术的综合利用(xhtml+css;dom动态的显示和交互;xml和json进行数据交...

  • ajax中xml和json

    一、DOM解析XML字符串 创建DOM解析XML的解析器,解析器解析XML字符串IE浏览器var parser =...

网友评论

      本文标题:2019-08-23 ajax , xml ,json

      本文链接:https://www.haomeiwen.com/subject/itttectx.html