我有一个简单的语法来获取文本区域的总和。效果很好,但是如果该字段中没有任何值,那么该计算就不会运行。
如何在不使内容实际为0的情况下将默认值设为0?就像,我不希望字段加载中已经在框中等待的0-我只希望公式不担心空字段。
这是jQuery:
jQuery(document).ready(function(){
jQuery(".button1").click(function(){
var set1 = function() {
var calc1 = 0;
$('.calc1').each( function(index,item) {
calc1 += parseInt(jQuery(item).val());
});
$('.result1').html(calc1);
}
set1();
});
});
如果您有更好的主意,可以在此处查看codepen:https://codepen.io/JTBennett/pen/NENMdP
我对此表示感谢!我知道这可能是一个愚蠢的错误,但是我尝试了一些不同的操作,但是还没有到位。
答案 0 :(得分:5)
尝试parseInt(jQuery(item).val() || 0)
。如果第一个为|| operator,则falsey将返回第二个值。因此,如果该值为空,它将尝试解析为“ 0”,它将成功。
答案 1 :(得分:1)
只需创建一个if语句,查找一个空字段,然后将其替换为0。
$('.calc1').each( function(index,item) {
var itemValue = jQuery(item).val();
if (itemValue === "") {itemValue = 0;}
calc1 += parseInt(itemValue);
});
答案 2 :(得分:0)
您可以使用以下内容替换行:
calc1 += parseInt(jQuery(item).val() || 0);