如何用jquery计算#total值+ 170?
$("#member").click(function() {
if ($('#member').is(':checked')) {
var totalv = $("#total").val();
var skatz = 170;
var skaits = totalv + skatz;
$("#total").val(skaits);
}
答案 0 :(得分:1)
.val()
的结果将是一个字符串,因此您首先需要将其转换为数字:
var totalv = $("#total").val();
var skatz = 170;
var skaits = +totalv + skatz;
$("#total").val(skaits);
(注意totalv变量的附加+前缀。
答案 1 :(得分:1)
您应该检查提供的值是否实际上是一个数字(您可以每次执行onkeypress或keyup,但我说您应该始终检查提交)。以下是您修改后的代码(通过检查以查看值是否为数字)。
编辑:确保您的javascript已准备好文档。 (功能可以在此通话之外)
$(document).ready(function () {
$("#member").click(function() {
if ($('#member').is(':checked')) {
var totalv = $("#total").val();
if(isNumber(totalv) == true)
{
var skatz = 170;
var skaits = parseInt(totalv) + skatz;
$("#total").val(skaits);
}
else
{
alert("You must enter a numerical value");
}
}
});
function isNumber(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}