商城购买数量选择


1.做个商城数量选择小工具

要求的规则:

     1).输入范围限定在1-200.

     2).超过200则,则进行提示

    3.)非法字符禁止输入

    4.)一般在客户端验证后,服务器端还是需要重新验证的。


2.HTML

<div class="shoes-cnt">

			<div class="shoes-cnt-notice">
				数量
			</div>

			<div class="shoes-cnt-minus shoes-cnt-minus-blur">
				-
			</div>

			<div class="shoes-cnt-area">
				<input type="text" class="shoes-cnt-input" value="1"/>
			</div>

			<div class="shoes-cnt-plus">
				+
			</div>

			<div class="shoes-cnt-max">
				(限购200件)
			</div>
		</div>

3.CSS

body,input{
	margin:0;
	padding:0;
}

/*
	鞋子的数量
	----------------------------------------------------
*/

.shoes-cnt{
	margin-top:10px;
	width:100%;
	display:flex;
	display:-webkit-flex;
	height:25px;
}

.shoes-cnt-notice{
	line-height:25px;
	width:50px;
	text-align:center;
}

.shoes-cnt-minus{
	width:25px;
	height:25px;
	box-sizing:border-box;
	border:1px solid grey;
	text-align:center;
	line-height:23px;
	font-size:18px;
}

.shoes-cnt-minus-blur{
	color:#b1b1b1;
}

.shoes-cnt-area{
	width:35px;
	height:25px;
	border-top:1px solid grey;
	border-bottom:1px solid grey;
	box-sizing:border-box;
}

.shoes-cnt-input{
	width:100%;
	height:100%;
	border:none;
	outline:none;
	text-align:center;
}

.shoes-cnt-plus{
	width:25px;
	height:25px;
	box-sizing:border-box;
	border:1px solid grey;
	text-align:center;
	text-align:center;
	line-height:23px;
	font-size:18px;
}

.shoes-cnt-plus-blur{
	color:#b1b1b1;
}

.shoes-cnt-max{
	flex:1;
	line-height:25px;
	font-size:12px;
	display:none;
	color:#f23030;
}

4.JS

/*
	鞋子数量输入选择

	-------------------------------
	1.鞋子数量最大上限需要与后端共同验证
*/

//单次可以购买鞋的最大数量
var cnt_max=200;

$(".shoes-cnt-minus").click(function(){
	var input_value=$(".shoes-cnt-input").val();
	$(".shoes-cnt-input").val(--input_value);
	validateCnt();
});

$(".shoes-cnt-plus").click(function(){
	var input_value=$(".shoes-cnt-input").val();
	$(".shoes-cnt-input").val(++input_value);
	validateCnt();
});



$(".shoes-cnt-input").blur(function(){
	validateCnt();
});

$(".shoes-cnt-input").keyup(function(){
	var input_value=$(".shoes-cnt-input").val();
	if(input_value.length>2)
	{
		validateCnt();
	}
});



/*数字验证*/
function validateCnt(){
	var input_value=$(".shoes-cnt-input").val();
	$(".shoes-cnt-max").hide();
	if(isNaN(input_value))
	{
		$(".shoes-cnt-input").val(1);
		$(".shoes-cnt-minus").addClass("shoes-cnt-minus-blur");

	}else{
		if(input_value>=cnt_max)
		{
			$(".shoes-cnt-input").val(cnt_max);

			$(".shoes-cnt-max").show();
			$(".shoes-cnt-minus").removeClass("shoes-cnt-minus-blur");
			$(".shoes-cnt-plus").addClass("shoes-cnt-plus-blur");
		}

		if(input_value<=1)
		{
			$(".shoes-cnt-input").val(1);

			$(".shoes-cnt-minus").addClass("shoes-cnt-minus-blur");
		}

		if(input_value>1&&input_value<cnt_max)
		{
			$(".shoes-cnt-minus").removeClass("shoes-cnt-minus-blur");
			$(".shoes-cnt-plus").removeClass("shoes-cnt-plus-blur");
		}
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值