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 相关文章推荐
javascript 客户端验证上传图片的大小(兼容IE和火狐)
Aug 15 Javascript
javascript调试说明
Jun 07 Javascript
如何使用json在前后台进行数据传输实例介绍
Apr 11 Javascript
javascript 函数及作用域总结介绍
Nov 12 Javascript
Jquery中国地图热点效果-鼠标经过弹出提示层信息的简单实例
Feb 12 Javascript
JavaScript内存管理介绍
Mar 13 Javascript
JavaScript中this的9种应用场景及三种复合应用场景
Sep 12 Javascript
JS中静态页面实现微信分享功能
Feb 06 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
Jul 21 Javascript
自适应布局meta标签中viewport、content、width、initial-scale、minimum-scale、maximum-scale总结
Aug 18 Javascript
微信小程序登陆注册功能的实现代码
Dec 10 Javascript
利用H5api实现时钟的绘制(javascript)
Sep 13 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
php中的路径问题与set_include_path使用介绍
2014/02/11 PHP
php将12小时制转换成24小时制的方法
2015/03/31 PHP
利用ajax和PHP实现简单的流程管理
2017/03/23 PHP
Laravel5框架添加自定义辅助函数的方法
2018/08/01 PHP
基于jquery1.4.2的仿flash超炫焦点图播放效果
2010/04/20 Javascript
高亮显示web页表格行的javascript代码
2010/11/19 Javascript
Angularjs中UI Router的使用方法
2016/05/14 Javascript
JavaScript生成带有缩进的表格代码
2016/06/15 Javascript
JS查找字符串中出现次数最多的字符
2016/09/05 Javascript
js实现html table 行,列锁定的简单实例
2016/10/13 Javascript
Vue.js devtool插件安装后无法使用的解决办法
2017/11/27 Javascript
JS实现的文件拖拽上传功能示例
2018/05/21 Javascript
vue结合axios与后端进行ajax交互的方法
2018/07/06 Javascript
快速解决vue在ios端下点击响应延时的问题
2018/08/27 Javascript
Vue使用localStorage存储数据的方法
2019/05/27 Javascript
Vue this.$router.push(参数)实现页面跳转操作
2020/09/09 Javascript
[03:12]完美世界DOTA2联赛PWL DAY6集锦
2020/11/05 DOTA
Python的Django框架中的URL配置与松耦合
2015/07/15 Python
python对list中的每个元素进行某种操作的方法
2018/06/29 Python
Python实现模拟浏览器请求及会话保持操作示例
2018/07/30 Python
python 通过麦克风录音 生成wav文件的方法
2019/01/09 Python
python实现图书借阅系统
2019/02/20 Python
手写一个python迭代器过程详解
2019/08/27 Python
图解python全局变量与局部变量相关知识
2019/11/02 Python
css3动画 小球滚动 js控制动画暂停
2019/11/29 HTML / CSS
最新的小工具和卓越的产品设计:Oh That Tech!
2019/08/07 全球购物
美国婴儿服装购物网站:Gerber Childrenswear
2020/05/06 全球购物
小学毕业家长寄语
2014/01/19 职场文书
国家助学金获奖感言
2014/01/31 职场文书
校园环保建议书
2014/05/14 职场文书
刑事起诉书范文
2015/05/19 职场文书
行政答辩状范文
2015/05/21 职场文书
九年级历史教学反思
2016/02/19 职场文书
python基础详解之if循环语句
2021/04/24 Python
如何将numpy二维数组中的np.nan值替换为指定的值
2021/05/14 Python
MySQL去除密码登录告警的方法
2022/04/20 MySQL