Javascript 如何在选中或取消选中复选框时更改其值
大家好,问题来了。我想根据复选框执行不同的计算Javascript 如何在选中或取消选中复选框时更改其值,javascript,jquery,html,Javascript,Jquery,Html,大家好,问题来了。我想根据复选框执行不同的计算 <div> COD: <input type="checkbox" id="trigger" name="question" > </div> 鳕鱼: 下面是计算物品价格的javascript 问题是我不知道如何使用else-if方法 <script> $("#price,#quant,#shipment").keyup(function () { if(+myFuncti
<div>
COD: <input type="checkbox" id="trigger" name="question" >
</div>
鳕鱼:
下面是计算物品价格的javascript
问题是我不知道如何使用else-if方法
<script>
$("#price,#quant,#shipment").keyup(function () {
if(+myFunction3() =="" )
{
$('#demo').val(0);
}
else if($('#trigger')=="checked") //this is the problem
{
$('#demo').val($('#price').val() * $('#quant').val() ;
}
else
{
$('#demo').val($('#price').val() * $('#quant').val() + +myFunction3());
}
});
</script>
$(“#价格,#数量,#装运”).keyup(函数(){
如果(+myFunction3()==“”)
{
$('#demo').val(0);
}
else if($('#trigger')==“checked”)//这就是问题所在
{
$('#demo').val($('#price').val()*$('#quant').val();
}
其他的
{
$('demo').val($('price').val()*$('quant').val()++myFunction3());
}
});
提前谢谢大家。你们的脚本应该是这样的:
<script>
$("#price, #quant, #shipment").keyup(function () {
if(+myFunction3() =="" )
{
$('#demo').val(0);
}
else if ($('#trigger').is(':checked')) { //this is the problem
$('#demo').val($('#price').val() * $('#quant').val() ;
}
else
{
$('#demo').val($('#price').val() * $('#quant').val() + +myFunction3());
}
});
</script>
$(“#价格,#数量,#装运”).keyup(函数(){
如果(+myFunction3()==“”)
{
$('#demo').val(0);
}
否则如果($('#trigger')。是(':checked'){//这就是问题所在
$('#demo').val($('#price').val()*$('#quant').val();
}
其他的
{
$('demo').val($('price').val()*$('quant').val()++myFunction3());
}
});
使用jQuery,您可以执行以下操作:
else if($('#trigger:checked').length > 0)
或
如果您希望在用户选中或取消选中复选框时重新运行计算,则可以在上运行与在keyup函数上运行的代码相同的代码:
$('#trigger').change(function() {
...
})
试试这个:
<script>
$("#price,#quant,#shipment").keyup(function () {
if(+myFunction3() =="" )
{
$('#demo').val(0);
return;
}
var isCOD = $('#trigger').is(':checked');
var val = $('#price').val() * $('#quant').val();
if (isCOD)
{
val += myFunction3();
}
$('#demo').val(val);
}
});
</script>
$(“#价格,#数量,#装运”).keyup(函数(){
如果(+myFunction3()==“”)
{
$('#demo').val(0);
返回;
}
var isCOD=$(“#触发器”).is(“:选中”);
var val=$('#price').val()*$('#quant').val();
如果(isCOD)
{
val+=myFunction3();
}
$('#demo').val(val);
}
});
如果出现以下情况,请在else中尝试此条件:
else if($('input#trigger[type=checkbox]').is(":checked"))
try:-
$(“#trigger”).is(“:checked”)
试试这个$(“#trigger”).is(“:checked”),资源如果上面的方法不起作用,获取状态的详细方式是document.getElementById(“trigger”).checked什么是+myFunction3 this?@AtifTariq它将获取shipping Details的值显示我可以像onkeyup一样吗?因为例如$(“#demo”).val($('#price').val()*$('#quant').val()++myFunction3();是在我检查值是否自动更改时计算出来的。没有更改显示是否可以像onkeyup一样进行显示?因为例如$('#demo').val($('#price').val()*$('#quant').val()*$('#quant').val()++myFunction3());是在我检查值未更改时计算的automatically@Jonas当你勾选框时,你想再次运行计算吗?是的,是的。这就是我需要的。我不知道把它放在哪里:((对不起。我们可以在聊天时讨论吗?“#价格,#数量,#装运”都是输入框吗?如果是,你应该可以更改:$()#keyup(函数(){“到$(“#price,#quant,#shipping,#trigger”)。在脚本标记的第一行中更改(函数(){”)。
else if($('input#trigger[type=checkbox]').is(":checked"))