我确定这是基本的东西,但我希望任何文本输入都留空以使其值为零,因此它仍然可以包含在函数中,而不会弄乱等式的最终总和。
目前我只是设置<input type="text" id="id" value="0">
,因为没有任何内容会被var value = document.getElementById("id");
分割,但我不想在文本框中看到零。
是否有更好的方法可以在等式中不包含空输入?
答案 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(或浮点数,任何适合您的类型),然后验证它是否为有效数字,如果不是,则只需为其赋值为零。这样你就可以在等式中使用它,你不需要在输入中显示零。