美文网首页Web前端之路js笔记让前端飞
js笔记四十四之表格排序,DOM映射及初识ajax

js笔记四十四之表格排序,DOM映射及初识ajax

作者: uplyw | 来源:发表于2018-06-10 22:03 被阅读44次

表格排序

<style type="text/css">
    li{
        list-style: none;
    }
    #ul1{
        width: 150px;
        margin: 20px auto;
    }
    #ul1 li{
        border-bottom: 1px solid #aaa;
    }
</style>
<ul id="ul1">
    <li>67</li>
    <li>64</li>
    <li>61</li>
    <li>69</li>
    <li>65</li>
</ul>
<script type="text/javascript" src="utils.js"></script>
<script type="text/javascript">
    var oUl = document.getElementById("ul1");
    var oLis = oUl.getElementsByTagName("li");
    // 1. 先把元素集合类数组转换为数组
    var ary = utils.listToArray(oLis);
    // 2. 给数组进行排序: 按照每一个li中的内容大小进行排序 
    ary.sort(function(a,b){
        return parseFloat(a.innerHTML) - parseFloat(b.innerHTML);
    })
    // 3. 按照ary中存储的最新顺序依次的把对应的li添加到页面中
    var frg = document.createDocumentFragment();
    for (var i = 0; i < ary.length; i++) {
        frg.appendChild(ary[i])
    }
    oUl.appendChild(frg);
    frg = null;
</script>

DOM映射机制

  • 页面中的标签和js中获取到的元素对象(元素集合)是紧紧地绑定在一起的,页面中的HTML结构改变,js中不需要重新获取,集合里面的内容也会跟着自动改变

初识AJAX

<table id="tab">
    <thead>
        <tr>
            <th></th>
            <th></th>
            <th></th>
            <th></th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
        <tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<script>
    // 想要操作谁,先要获取谁(table的获取方式)
    var oTab = document.getElementById("tab");
    
    // 获取表格中的头(表格头唯一)
    var tHead = oTab.tHead;
    
    // tHead.rows[0] -> 获取表格中头一行
    // tHead.rows[0].cells -> 获取表格头一行中的一列
    var oThs = tHead.rows[0].cells;
    
    // 获取表格中内容(表格体,表格体不唯一)[bodies: body的复数形式]
    var tBody = oTab.tBodies[0]
    
    // 获取表格中的每一行
    var oRows = tBody.rows
</script>
// 1. 首先创建一个Ajax对象
var xhr = new XMLHttpRequest();

// 2. 打开需要请求数据的那个文件地址
xhr.open("get", "data.txt", true) // true 异步请求

// 3. 监听请求状态
xhr.onreadystatechange = function (){
    if(xhr.readyState === 4 && /^2\d{2}$/.test(xhr.status)){
        var val = xhr.responseText;
        console.log(val)
    }
}

// 4. 发送请求
xhr.send(null);

相关文章

  • js笔记四十四之表格排序,DOM映射及初识ajax

    表格排序 DOM映射机制 页面中的标签和js中获取到的元素对象(元素集合)是紧紧地绑定在一起的,页面中的HTML结...

  • DOM映射+ajax

    原生JS和jQuery在DOM映射中的区别 在原生JS中,有DOM映射,改变页面内容,JS 中获取的元素集合同时改...

  • 虚拟dom怎么实现的?

    将DOM做一层映射关系v-DOM,本该对DOM的操作映射到v-DOM上,v-DOM完全用js实现,与宿主浏览器无关...

  • 什么叫Web前端?web前端HTML5学习方法分享

    web前端开发主要是通过html,css,js,ajax,DOM等前端技术,实现网站在客服端的正确显示及交互功能。...

  • vue 中使用 sortable 库拖拽列表

    sortable.js 可以实现对 dom 的拖放排序,在 vue 中,往往更新的 dom 后,数据也要排序。同步...

  • JS DOM初识

    document对象,以及DOM节点分类 document对象是HTML文档的根节点,同时它也是window对象的...

  • virtual DOM and life circle of V

    1. virtual DOM 一个真正的dom节点可以在js中映射成一个这样的对象,也就是js中的虚拟dom。 我...

  • javascript面试准备(一)

    interview js 基础 原型 原型链 作用域 闭包 异步 单线程 js Api dom 操作 ajax 事...

  • Dom高级二

    DOM高级(二) 实现多关键词搜索 表格排序实例 appendChild 的新用法 用sort()对数组进行排序 ...

  • js表格排序

    利用jquery的jquery.tablesorter.js来实现,不依赖别的东西 1.下载jquery.tabl...

网友评论

    本文标题:js笔记四十四之表格排序,DOM映射及初识ajax

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