zepto ajax接收验证码

zepto的ajax方式和jq一样

node.js服务器设置:

/**
 * Created by 10853 on 2020/2/1.
 */
//引入模块
var express=require('express');

//创建服务器
var app=express();


//开启服务器并监听端口
app.listen(3000,function(){
    console.log('this express server is running at http://127.0.0.1:3000 ');

})

app.get('/',function(req,res){
    var arr=[1,2,3,4,5];
    //跨域设置
    res.set('Access-Control-Allow-Origin','*');

    setTimeout(function(){
        res.send(arr);
    },3000);
})

app.post('/register',function(req,res){
    var list=req.body.name;
    console.log(list);
})

页面设置:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<title>ajax容易忽视的重点</title>
		<style type="text/css">
			#btn{
				width: 200px;
				height: 200px;
				background: red;
				border-radius: 20px;
				text-align: center;
				line-height: 200px;
				font-size: 30px;
			}
		</style>
	</head>
<body>
  <!--
    * 如何废除一个ajax请求 ----abort()方法
    需求:点击获取验证码的按钮,用户十秒时候可以再次获取,当十秒过后第一次请求没有返回,用户再次点击获取
    然后因为网速好或者其他原因,两次请求同时返回,该怎么解决

    * disabled属性   设置表单项或者按钮不可再点击或者操作;但是只是针对click事件,而并没有针对touch事件作出处理。
  -->
  <button id="btn">按钮</button>
  <script src="../js/zepto.js" type="text/javascript" charset="utf-8"></script>
  <script src="../js/touch.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript">
		$(function(){
			//标识用户是否可以点击,当颜色变回来才可以点击
			var isSend=false;
			var xhr=null;
			$('#btn').on('touchstart',function(){

				if(isSend)
				{
					return;
				}
				isSend=true;

				$('#btn').css('background-color','gray');

				setTimeout(function(){
					$('#btn').css('background-color','red');
					isSend=false;
				},2000);

				//判断用户是否发送请求
				if(!xhr) {
					xhr = sendXml();
				}else{
					//如果每次点击代表发送一次请求,每次点击取消上一次的ajx请求
					//取消上一次的ajax请求
					xhr.abort();
					xhr=sendXml();
				}
			});

			function sendXml()
			{
				var xhr= $.ajax({
						...
				});

				return xhr;
			}
		})
  </script>
</body>
</html>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值