AJAX

作者: 浩天天 | 来源:发表于2016-09-10 17:00 被阅读0次
    1.AJAX 是什么?有什么作用?

    答:AJAX全称(Asynchronous JavaScript and XML)是指异步的JavaScript和XML。
    AJAX是一种无须刷新页面就可以为页面中的某一部分加载数据的技术,数据通常以JSON的格式来进行传送,是一种创建快速动态网页的技术。
    传统网页不使用AJAX如果要得到新的内容则必须刷新整个页面,但是使用AJAX就可以不刷新。
    AJAX通过在后台与服务器进行少量的数据交换,可以使网页实现异步更新,从而节省用户的流量及时间,提高用户体验。


    2.前后端开发联调需要注意哪些事情?后端接口完成前如何 mock 数据?

    答:需要注意:1前后端约定好接口文档并指定负责人进行后续撰写和维护
    2.约定好接口数据的类型json、XML还是text等。
    3.约定好页面渲染用到的数据。
    完成mock数据:1.使用server-mock或者mock.js等数据模拟工具。
    2.自己搭建服务器,并使用后端语言PHP、Java去模拟数据。
    3.使用XAMPP等工具,编写PHP文件来进行测试。

    3.**点击按钮,使用 ajax 获取数据,如何在数据到来之前防止重复点击?

    答:通过设置状态锁的方法来防止:

    var isLoading = false
    btn.addEventListener("click",function(){
        if(isLoading){
            return
    }
        else{
               isloading = true
               //to do....
               isloading = false
        }
    },false)
    

    还可以使用:setTimeout让ajax请求在多少毫秒之后发出,中间只要点击就重新计时,以最后一次为准。

    封装一个 ajax 函数,能通过如下方式调用
        function ajax(objs){
            var xhr = new XMLHttpRequest()
            xhr.onreadystatechange = function(){
                if(xhr.readyState == 4 && xhr.status == 200){
                    console.log(xhr.readyState)
                }
                if(xhr.readyState == 4 && xhr.status == 404){
                    console.log("Error")
                }
            }
            var dataSend=""
            for(var key in objs.data){
                dataSend += key + "="+objs.data[key] + "&"
            }
            dataSend = dataSend.substr(0,dataSend.length-1)
            if(objs.type.toLowerCase()=="get"){
                xhr.open("GET",objs.url+dataSend,false)
                xhr.send()
            }
            if(objs.type.toLowerCase()=="post"){
                xhr.open("POST",objs.url,false)
                xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded")
                xhr.send(dataSend)
            }
        }
    
    2.实现如下加载更多的功能。

    代码
    新浪云实在搞不定呀

    3.实现注册表单验证功能

    代码

    相关文章

      网友评论

        本文标题:AJAX

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