js如何获取checkbox的累加值,高分救助,在线等
我想实现的是根据页面一个从后台数据库传过来的值{$x}作为判断条件,如果传过来的值为7元,那页面checkbox复选比如从前两个开始选择,当勾选到第三个时弹出提示"您勾选...
我想实现的是根据页面一个从后台数据库传过来的值{$x}作为判断条件,如果传过来的值为7元,那页面checkbox复选比如从前两个开始选择,当勾选到第三个时弹出提示"您勾选的金额超出{$x}7元,请重新选择“
,如果传过来的值为10元,当勾选到第四个选项时弹出”您勾选的金额超出{$x}10元,请重新选择“,我觉得思路是累加复选框的值然后做弹出判断,但不知道该怎么写,请大大帮忙写个完整例子,可加分,谢谢
我在网上看了很多人给的例子没一个能用的,都是残缺不全的 展开
,如果传过来的值为10元,当勾选到第四个选项时弹出”您勾选的金额超出{$x}10元,请重新选择“,我觉得思路是累加复选框的值然后做弹出判断,但不知道该怎么写,请大大帮忙写个完整例子,可加分,谢谢
我在网上看了很多人给的例子没一个能用的,都是残缺不全的 展开
2个回答
展开全部
<!doctype html>
<!--希望能帮到你-->
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<form id="form">
<input type="checkbox" value="5">5元
<input type="checkbox" value="2">2元
<input type="checkbox" value="3">3元
<input type="checkbox" value="5">5元
<input type="checkbox" value="10">10元
<input type="checkbox" value="5">5元
</form>
<script type="text/javascript">
var form = document.getElementById("form");
var $x = 10;
//用于处理“选中”事件的函数
var checkHandler = function(event){
//被选中的金额累加到sum
var sum = 0;
var boxes = document.getElementById("form").elements;
for(var i=0;i<boxes.length;i++){
if(boxes[i].checked){//判断是否被选中,如果是,就累加
sum += parseInt(boxes[i].value);
}
}
//console.log("sum="+sum);
if(sum > $x){
alert("金额超出 "+ $x +" 元");
//如果超出金额,则取消选中
event.target.checked=undefined;
}
}
//用于设置最大值 $x 的函数
function setThreshold(t){
$x = 10;
}
function addHandler(){
for(var i=0;i<form.elements.length;i++){
form.elements[i].onclick = checkHandler;
}
}
setThreshold(10);
addHandler();
</script>
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<!DOCTYPE html>
<html lang="en">
<head><script src="jquery.js"></script>
<meta charset="UTF-8">
<title>文哥讨厌IE</title>
<script type="text/javascript">
$(document).ready(function(){
var $x=2;//<s >
$(".submit").click(function(){
var sum=0;
$(":checked").each(function(){
if($("this :checked")){
sum+=parseInt($(this).next().text());
}
});
if(sum>$x){
$(":checked").removeAttr("checked","checked");
alert("您勾选的金额超出"+$x+"元,请重新选择");
return false;
}
});
});
</script>
</head>
<body>
<form>
<input type="checkbox"/><span>0元</span>
<input type="checkbox"><span>1元</span>
<input type="checkbox"><span>2元</span>
<input type="checkbox"><span>3元</span>
<input type="checkbox"><span>4元</span>
<input type="submit" value="submit" class="submit">
</form>
</body>
</html>
更多追问追答
追问
您这个有些问题,我要的不是submit提交才弹出提醒,是当勾选到第几个复选框时就弹出提醒,您能改改么
追答
好的,妥妥哒,请叫我文哥!
<!DOCTYPE html>
<html lang="en">
<head><script src="jquery.js"></script>
<meta charset="UTF-8">
<title>文哥讨厌IE</title>
<script type="text/javascript">
$(document).ready(function(){
var $x=2;//<s >
$(":checkbox").click(function(){//.submit
var sum=0;
$(":checked").each(function(){
if($("this :checked")){
sum+=parseInt($(this).next().text());
}
});
if(sum>$x){
$(":checked").removeAttr("checked","checked");
alert("您勾选的金额超出"+$x+"元,请重新选择");
return false;
}
});
});
</script>
</head>
<body>
<form>
<input type="checkbox"/><span>0元</span>
<input type="checkbox"><span>1元</span>
<input type="checkbox"><span>2元</span>
<input type="checkbox"><span>3元</span>
<input type="checkbox"><span>4元</span>
<input type="submit" value="submit" class="submit">
</form>
</body>
</html>
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询