javascript - 如果另一个功能处于活动状态,则启动一个功能并仅激活一些复选框 - JQuery
问题描述
我有一个功能,只有在之前激活了另一个功能时才想启动它。
我有一些 CheckBoxes,我需要对它的值求和以获得总数。
只有当用户选择了某些复选框时,它才必须激活另一个带有折扣的复选框。我希望在第一次选择后激活折扣复选框,因为如果我不这样做,我可能会得到负价格。
然后(如果可能的话)我希望禁用折扣复选框是用户取消选择所有以前的复选框。
这可能吗?
这是我的脚本。我是 JavaScript/jQuery 的超级新手,所以这可能是一个愚蠢的问题。
谢谢
$(document).on('change', getCheck);
function getCheck() {
var total= 0;
$('[type="checkbox"]:checked').not("#discount").each(function(i, el) {
//console.log($(this).not("#off").val());
var SumVehicle = parseFloat($(el).val());
total += SumVehicle;
//console.log(total);
//console.log(price_tot);
$('#rata').text(total +" €");
var finalprice = total;
//var Check = getCheck();
if(typeof(total) != "undefined" && total !== 0) {
$('[type="checkbox"]:checked').not(".sum").each(function(i, el) {
var Discount = parseFloat($(this).val());
finalprice = finalprice - Discount;
console.log(finalprice);
$('#rata').text(finalprice +" €");
});
};
});
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input class="sum" type="checkbox" name="vehicle1" value="1000"> I have a bike<br>
<input class="sum" type="checkbox" name="vehicle2" value="2000"> I have a car<br>
<br><br><br>
<input id="discount" type="checkbox" name="discount" value="200"> Discount<br>
<div id="rata">rata</div>
解决方案
用此代码替换您的 js 代码。错误将得到解决。
$( document ).ready(function() {
$("input[type='checkbox']").on('change', getCheck);
});
function getCheck() {
var total= 0;
$('[type="checkbox"]:checked').not("#discount").each(function(i, el) {
console.log($(this).not("#off").val());
var SumVehicle = parseFloat($(el).val());
total += SumVehicle;
console.log(total);
//console.log(price_tot);
$('#rata').html(total +" €");
var finalprice = total;
var Check = function getCheck(){
if(typeof(Check) != "undefined" && Check !== null) {
$("#discount").toggle();
var Discount = parseFloat($(this).val());
finalprice -= Discount;
console.log(finalprice);
$('#rata').text(finalprice +" €");
};
};
});
};
推荐阅读
- python - 逐句查找文本中的关键字
- ruby-on-rails - 偏执狂 gem 实现到没有模型的表
- php - 是否可以在 CodeIgniter 中使用手动 SQL 查询?
- asp.net - AsyncFileUpload 在用户控件的 UpdatePanel 中导致回发
- angular - MEAN.io 创建 CRUD 应用程序
- azure - Azure ARM 模板 - 嵌套资源参考
- spring-mvc - js和css在同一目录下,如何配置SpringMVC获取静态资源?
- python - python networkx,具有n个节点的图,每个节点都有k度
- powershell - 在PowerShell中如何替换回车
- java - 需要一些关于在 Android 上将裁剪图像插入原始图像的建议