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实现的图片马赛克后显示并切换加文字功能
Apr 21 Javascript
自定义右键属性覆盖浏览器默认右键行为实现代码
Feb 02 Javascript
推荐10个2014年最佳的jQuery视频插件
Nov 12 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
Jul 27 Javascript
js实现文本框支持加减运算的方法
Aug 19 Javascript
原生JS实现隐藏显示图片 JS实现点击切换图片效果
Jan 27 Javascript
详解vue静态资源打包中的坑与解决方案
Feb 05 Javascript
Vue2实时监听表单变化的示例讲解
Aug 30 Javascript
详解如何在Angular优雅编写HTTP请求
Dec 05 Javascript
详解使用WebPack搭建React开发环境
Aug 06 Javascript
解决vue初始化项目一直停在downloading template的问题
Nov 09 Javascript
使用vue编写h5公众号跳转小程序的实现代码
Nov 27 Vue.js
详解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
图书管理程序(一)
2006/10/09 PHP
基于php无限分类的深入理解
2013/06/02 PHP
php中的观察者模式简单实例
2015/01/20 PHP
ThinkPHP模型详解
2015/07/27 PHP
laravel5创建service provider和facade的方法详解
2016/07/26 PHP
PHP实现的下载远程文件类定义与用法示例
2017/07/05 PHP
PHP实现微信提现功能(微信商城)
2019/11/21 PHP
js网页版计算器的简单实现
2013/07/02 Javascript
Js实现无刷新删除内容
2015/04/29 Javascript
jquery实现可关闭的倒计时广告特效代码
2015/09/02 Javascript
利用jQuery和CSS将背景图片拉伸
2015/10/16 Javascript
js仿新浪微博消息发布功能
2017/02/17 Javascript
通过npm引用的vue组件使用详解
2017/03/02 Javascript
Vue请求JSON Server服务器数据的实现方法
2018/11/02 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
VSCode插件安装完成后的配置(常用配置)
2020/08/24 Javascript
python动态性强类型用法实例
2015/05/09 Python
Django 再谈一谈json序列化
2020/03/16 Python
PyQt5+python3+pycharm开发环境配置教程
2020/03/24 Python
Python求解排列中的逆序数个数实例
2020/05/03 Python
pycharm 代码自动补全的实现方法(图文)
2020/09/18 Python
python 如何上传包到pypi
2020/12/24 Python
canvas环形倒计时组件的示例代码
2018/06/14 HTML / CSS
提供世界各地便宜的机票:Sky-tours
2016/07/21 全球购物
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
syb养殖创业计划书
2014/01/09 职场文书
自我鉴定怎么写
2014/01/12 职场文书
学生请假条
2014/04/11 职场文书
局火灾防控工作方案
2014/05/25 职场文书
社会工作专业求职信
2014/07/15 职场文书
四风对照检查剖析材料
2014/10/07 职场文书
2014财务部年度工作总结
2014/12/08 职场文书
我的法兰西岁月观后感
2015/06/09 职场文书
2016秋季田径运动会广播稿
2015/12/21 职场文书
php中pcntl_fork详解
2021/04/01 PHP
浅谈MySQL next-key lock 加锁范围
2021/06/07 MySQL