使用javascript将空文本输入设置为零

时间:2016-09-09 00:17:39

标签: javascript

我确定这是基本的东西,但我希望任何文本输入都留空以使其值为零,因此它仍然可以包含在函数中,而不会弄乱等式的最终总和。

目前我只是设置<input type="text" id="id" value="0">,因为没有任何内容会被var value = document.getElementById("id");分割,但我不想在文本框中看到零。

是否有更好的方法可以在等式中不包含空输入?

3 个答案:

答案 0 :(得分:0)

不要在输入上设置值。不要在输入中显示占位符。

var value = document.getElementById("id").value;

if (value !== "") {
    //use it here
}

答案 1 :(得分:0)

您可以使用||运算符和默认值在一行中排除空文本框(或不存在任何文本框):

var value = document.getElementById("id").value || "0";

或者,如果你想要一个整数值(因为看起来你要进行计算):

var value = +document.getElementById("id").value || 0;

答案 2 :(得分:0)

由于您正在搜索要在等式中使用的数值,因此您可以在内部执行所有计算以避免在输入中显示这些值,例如:

var value = parseInt(document.getElementById("id"));

if(isNaN(value)){
    value = 0;
}

您只需先将结果解析为int(或浮点数,任何适合您的类型),然后验证它是否为有效数字,如果不是,则只需为其赋值为零。这样你就可以在等式中使用它,你不需要在输入中显示零。