美文网首页
百度jsonp获取数据

百度jsonp获取数据

作者: 小哪吒 | 来源:发表于2017-05-24 14:23 被阅读0次
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <style>
            .gray{
                background: #ccc
            }
        </style>
    </head>
    <body>
       <div id="box">
            <input type="text" v-model="todo" @keyup="get($event)" @keydown.down="changeDown" @keydown.up.prevent="changeUp" >
    
        <ul>
            <li v-for="value in myData"  :class="{gray:$index==now}">
                {{value}}
            </li>
        </ul>
    
        <p v-show="myData.length==0">暂无数据...</p>
      </div>
    
        <script src="vue.js"></script>
        <script src="vue-resource.js"></script>
    
        <script>
            new Vue({
                el:'#box',
                data:{
                    myData:[],   //存储li里面的数据
                    todo:'',
                    now:"-1"
                },
                methods:{
                    
                    get(ev){
    
                    //当我按下上或者下键的时候,不在请求
                        if(ev.keyCode==38 || ev.keyCode==40){
                            return;
                        }
    
                        if(ev.keyCode==13){
                            window.open("https://www.baidu.com/s?wd="+this.todo)
                        }
                        this.$http.jsonp(
                            "https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su",
                            {
                             wd:this.todo
                            },
                            {
                                jsonp:"cb"
                             
                             }).then(function(data){
                               //吧请求到的数据添加到数组里
                                this.myData=data.data.s;
     
                        },function(err){
                            console.log("shibai")
                        })
                    },
    
                    changeDown(){
    
                         this.now++;
                         // 如果当前的索引值等于数组的长度
                         if(this.now==this.myData.length){
                            this.now=-1;
                         }
                         
                         // 当前的文本框等于数组中的当前内容
                         this.todo=this.myData[this.now];
                    },
                    changeUp(){
                        this.now--;
                        if(this.now==-2){
                            this.now=this.myData.length-1;
                        }
    
                           this.todo=this.myData[this.now];
                    }
                }
            })
        </script>
    </body>
    </html>
    

    相关文章

      网友评论

          本文标题:百度jsonp获取数据

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