Javascript 计算具有特定 class 的所有输入字段的总和
Javascript calculate the sum of all input fields with a specific class
好的,我有这段代码在特定点上运行良好。
$(document).ready(function(){
var val1 = +$(".charge").val();
var val2 = +$(".fee").val();
var val3 = +$(".loadrate").val();
$("#finalrate").val(val1-val2+val3);
$(".financeinput").keyup.each(function(){
var val1 = +$(".charge").val();
var val2 = +$(".fee").val();
var val3 = +$(".loadrate").val();
var initial = $("#finalrate").val();
$("#finalrate").val(val1-val2+val3);
var second = $("#finalrate").val();
if(initial < second){
$("#finalrate").removeClass("redardown").addClass("greenarup");
}
if(initial > second){
$("#finalrate").removeClass("greenarup").addClass("redardown");
}
if(initial = second){
}
});
});
我有多个字段 class “.charge” 和多个字段 class “.fee” 但是这里的代码只获取第一个字段的值 class,而我需要计算所有这些。我知道这一定很简单,但我对 javascript.
还很陌生
您应该在 'charge' 和 'fee' 输入上使用 .each。
$(".charge").each(function()
{
$(this).val(); // this should have value for current input
}
这是一个示例,您可以看到它是如何工作的:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<title>Login</title>
</head>
<body>
<input class="test" type="text" value="2">
<input class="test" type="text" value="3">
<input class="test" type="text" value="4">
</body>
<script type="text/javascript">
var test1 = 0;
$(".test").each(function(){
test1 += parseInt($(this).val());
});
window.alert("" + test1);
</script>
</html>
我不确定你到底想做什么,但你可能想要这样的东西:
var val1 = 0;
$(".charge").each(function(){
val1 += parseInt($(this).val());
});
window.alert("" + val1); // should have all .charge added up here
这只是一个伪代码,但基本上您的解决方案可能如下所示(纯 js)
var x = document.getElementsByClassName("charge");
for(var i = 0; i<x.length; i++){
sum += x[i].value;
}
并为您需要的所有 类 做到这一点
好的,我有这段代码在特定点上运行良好。
$(document).ready(function(){
var val1 = +$(".charge").val();
var val2 = +$(".fee").val();
var val3 = +$(".loadrate").val();
$("#finalrate").val(val1-val2+val3);
$(".financeinput").keyup.each(function(){
var val1 = +$(".charge").val();
var val2 = +$(".fee").val();
var val3 = +$(".loadrate").val();
var initial = $("#finalrate").val();
$("#finalrate").val(val1-val2+val3);
var second = $("#finalrate").val();
if(initial < second){
$("#finalrate").removeClass("redardown").addClass("greenarup");
}
if(initial > second){
$("#finalrate").removeClass("greenarup").addClass("redardown");
}
if(initial = second){
}
});
});
我有多个字段 class “.charge” 和多个字段 class “.fee” 但是这里的代码只获取第一个字段的值 class,而我需要计算所有这些。我知道这一定很简单,但我对 javascript.
还很陌生您应该在 'charge' 和 'fee' 输入上使用 .each。
$(".charge").each(function()
{
$(this).val(); // this should have value for current input
}
这是一个示例,您可以看到它是如何工作的:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<title>Login</title>
</head>
<body>
<input class="test" type="text" value="2">
<input class="test" type="text" value="3">
<input class="test" type="text" value="4">
</body>
<script type="text/javascript">
var test1 = 0;
$(".test").each(function(){
test1 += parseInt($(this).val());
});
window.alert("" + test1);
</script>
</html>
我不确定你到底想做什么,但你可能想要这样的东西:
var val1 = 0;
$(".charge").each(function(){
val1 += parseInt($(this).val());
});
window.alert("" + val1); // should have all .charge added up here
这只是一个伪代码,但基本上您的解决方案可能如下所示(纯 js)
var x = document.getElementsByClassName("charge");
for(var i = 0; i<x.length; i++){
sum += x[i].value;
}
并为您需要的所有 类 做到这一点