1如果var m1000 = 0,如何隐藏输出,我想隐藏text1000,例如,如果我在字段中输入少于1000,我希望text1000或0 * 1000 Bank Bill从中消失输出线
function doMoneyExchange() {
var inp1 = parseInt(document.getElementById("input1").value);
var m1000 = parseInt(inp1 / 1000);
var text1000 = m1000 + " * 1000 Bank Bill <br>"
inp1 = inp1 % 1000;
if (m1000 == "0") {
("text1000").hide();
}
var m500 = parseInt(inp1 / 500);
var text500 = m500 + " * 500 Bank Bill <br>"
inp1 = inp1 % 500;
var m100 = parseInt(inp1 / 100);
var text100 = m100 + " * 100 Bank Bill <br>"
inp1 = inp1 % 100;
var out = text1000 + text500 + text100;
document.getElementById("output").innerHTML = out;
答案 0 :(得分:0)
看起来你正在尝试使用jQuery。那是对的吗? ("text1000").hide();
是我的证据。如果是这样,$("text1000").hide();
可能会更好。
答案 1 :(得分:0)
好的,你错误地使用了$.hide()
。此方法用于隐藏元素,但您的程序将最后的所有内容连接成一个字符串,然后输出到HTML元素。
你应该做的是将字符串变量初始化为空字符串,然后在相应的数字变量大于0的条件下为它们赋值。例如,
var text1000 = "";
if(m1000 > 0) {
text1000 = m1000 + " * 1000 Bank Bill <br/>";
}
冲洗并重复,结果输出字符串应仅包含大于0的数字行。
P.S。如果您打算在输出中使用字符串连接,则不需要多个子字符串变量。这使您的代码不易维护。相反,考虑使用单个字符串变量并在部分连接,而不是最后连接。
var outputString = "";
if(m1000 === "0") {
outputString = outputString.concat(m1000 + " * 1000 Bank Bill <br>";
}
if(m100 === "0") {
outputString = outputString.concat(m100 + " * 100 Bank Bill <br>";
}
// repeat
document.getElementById("output").innerHTML = outputString;