get  post jsonp三种数据交互形式实例详解


Posted in Javascript onAugust 25, 2017

一、get请求

1.引入 vue.js 和 vue-resource.js , 准备一个按钮

<input type="button" value="按钮" @click="get()"/>  //点击按钮请求数据函数get()

2.准备一个txt文件

welcome vue

3.编写js代码

<script>
 window.onload=function(){
  new Vue({
  el:'body',      //主体为body,有套div时,此处为选择器
  methods:{
   get:function(){
   this.$http.get('a.txt').then(function(res){
    alert(res.data)

 //成功后,弹出请求数据
   },function(res){         
    alert(res.status)


//失败后,弹出请求状态码
   })
   }
  }
  })
 }
 </script>

二、post请求

1.引入 vue.js 和 vue-resource.js , 准备一个按钮

<input type="button" value="按钮" @click="get()"/>

2.准备一个php文件

<?php
 $a=$_POST['a'];
 $b=$_POST['b'];
 echo $a-$b;



//回显数据相减结果
?>

3.编写js代码

<script>
 window.onload=function(){
  new Vue({
  el:'body',
  methods:{
   get:function(){
   this.$http.post('post.php',{  //发送实参数据,进行运算(需要放在服务器环境)
    a:1,
    b:2
   },{
    emulateJSON:true    //post的标识
   }).then(function(res){
    alert(res.data)



//成功后弹出数据结果
   },function(res){


    alert(res.status)



 //失败后弹出状态码
   })
   }
  }
  })
 }
 </script>

三、jsonp——百度下拉列表实例

1.引入 vue.js 和 vue-resource.js , 准备基础样式代码

<style>
 .gray{
  background: #ccc;    //按上下键时显示的文字背景颜色
 }
 </style>
<div id="box">
 <input type="text" v-model="t1" @keyup="get($event)" @keydown.down="changeDown()" @keydown.up.prevent="changeUp()"/>



//按键传键值 get($event) 函数 //按向下键时 changeDown() 函数 //按向上键时 changeUp() 函数:阻止默认行为输入浮上移
 <ul>
  <li v-for="value in myData" :class="{gray:$index==now}">{{value}}</li>




//循环myData数据 绑定样式同时添加条件,下标值此时为几时,背景为灰
 </ul>
 <p v-show="myData.length==0">暂无数据...</p> //当数据长度为0时,显示暂无数据...
 </div>

  2、编写js代码

<script>
 window.onload=function(){
  new Vue({
  el:'#box',
  data:{
   myData:[],
   t1:'',
   now:-1
  },
  methods:{
   get:function(ev){        

 //接收事件
   if(ev.keyCode==38||ev.keyCode==40)return;




//如果事件为向上向下则return不请求数据
   if(ev.keyCode==13){







 


 //如果事件为回车
    window.open('https://www.baidu.com/s?wd='+this.t1); //则打开百度对应t1值页面
    this.t1=''; 











 //清空输入框
   }
   this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{
    wd:this.t1 












//截取的搜索接口,发送数据为输入框此时输入的数据
   },{
    jsonp:'cb' 











 //callback名字,默认为'callback'
   }).then(function(res){
    this.myData=res.data.s









//将数据的s值赋给 myData
   },function(res){
    alert(res.status)
   })
   },
   changeDown:function(){ 










//按下键时的函数
   this.now++;













//now下标值++
   if(this.now==this.myData.length)this.now=-1;



//如果下标值为数据长度,即最后一个时,为-1,跳到第一个
   this.t1=this.myData[this.now]







 //输入框值为此时数据中选中的值
   },
   changeUp:function(){ 










 //按上键时的函数
   this.now--;













//now下标值--
   if(this.now==-2)this.now=this.myData.length-1


 //如果下标值为-2,此时now=总长度-1,跳到最后一个
   this.t1=this.myData[this.now]







 //输入框值为此时数据中选中的值 
   }
  }
  })
 }
 </script>

  3、类似百度搜索了。。。

总结

以上所述是小编给大家介绍的三种数据交互形式get  post jsonp实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery图片的展开和收缩实现代码
Apr 16 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
Jan 26 Javascript
javascript学习总结之js使用技巧
Sep 02 Javascript
js过滤HTML标签完整实例
Nov 26 Javascript
ztree简介_动力节点Java学院整理
Jul 19 Javascript
vue小图标favicon不显示的解决方案
Sep 19 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
Jul 31 Javascript
vue的滚动条插件实现代码
Sep 07 Javascript
微信小程序上传图片并等比列压缩到指定大小的实例代码
Oct 24 Javascript
JavaScript变量基本使用方法实例分析
Nov 15 Javascript
JavaScript实现图片放大预览效果
Nov 02 Javascript
JavaScript 反射学习技巧
Oct 16 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
Aug 25 #Javascript
浅谈JS获取元素的N种方法及其动静态讨论
Aug 25 #Javascript
AngularJS select设置默认值的实现方法
Aug 25 #Javascript
AngularJS 中ui-view传参的实例详解
Aug 25 #Javascript
node跨域请求方法小结
Aug 25 #Javascript
AngularJS中filter的使用实例详解
Aug 25 #Javascript
微信小程序实现表单校验功能
Mar 30 #Javascript
You might like
德生PL990的分析评价
2021/03/02 无线电
将php数组输出html表格的方法
2014/02/24 PHP
php简单实现发送带附件的邮件
2015/06/10 PHP
Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解
2019/08/02 PHP
js获取变量
2006/08/24 Javascript
JavaScript高级程序设计(第3版)学习笔记13 ECMAScript5新特性
2012/10/11 Javascript
基于promise.js实现nodejs的promises库
2014/07/06 NodeJs
Node.js抓取中文网页乱码问题和解决方法
2015/02/10 Javascript
深入解析JavaScript中函数的Currying柯里化
2016/03/19 Javascript
新入门node.js必须要知道的概念(必看篇)
2016/08/10 Javascript
详解vue-cli中的ESlint配置文件eslintrc.js
2017/09/25 Javascript
基于vue.js无缝滚动效果
2018/01/25 Javascript
webpack中的热刷新与热加载的区别
2018/04/09 Javascript
JS实现的input选择图片本地预览功能示例
2018/08/29 Javascript
为jquery的ajax请求添加超时timeout时间的操作方法
2018/09/04 jQuery
vue webpack打包后图片路径错误的完美解决方法
2018/12/07 Javascript
three.js搭建室内场景教程
2018/12/30 Javascript
关于JS模块化的知识点分享
2019/10/16 Javascript
js实现文字头像的生成代码
2020/03/07 Javascript
vue实现抽屉弹窗效果
2020/11/15 Javascript
[02:20]DOTA2英雄基础教程 黑暗贤者
2013/12/19 DOTA
[04:10]2016国际邀请赛中国区预选赛第二日TOP10精彩集锦
2016/06/28 DOTA
使用Django和Python创建Json response的方法
2018/03/26 Python
详解Python 装饰器执行顺序迷思
2018/08/08 Python
Python检测数据类型的方法总结
2019/05/20 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
2019/12/04 Python
pytorch 求网络模型参数实例
2019/12/30 Python
python字典的值可以修改吗
2020/06/29 Python
基于Python采集爬取微信公众号历史数据
2020/11/27 Python
PyQt5中QSpinBox计数器的实现
2021/01/18 Python
印度尼西亚最好的小工具在线商店:Erafone.com
2019/03/26 全球购物
大学生就业策划书范文
2014/04/04 职场文书
暑期培训心得体会
2014/09/02 职场文书
四风查摆剖析材料
2014/10/10 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
django注册用邮箱发送验证码的实现
2021/04/18 Python