无论Javascript中的条件语句如何,InnerHTML都保持不变

时间:2019-06-25 21:35:28

标签: javascript html

如果选择了某个单选选项,我正在使用HTML span标签显示一些文本。如果单击第二个单选选项,则应该覆盖span标签文本并将其转换为空字符串。该文本当前不会消失。

我尝试过style.display =“ none”,并且还尝试过使用空字符串覆盖innerHTML。

JavaScript



        if(timeCard[1].value == "N/A"){

            document.getElementById("radioError").innerHTML = "Please verify this field before submitting.";
            console.log('Hi');
        }else{
            document.getElementById("radioError").innerHTML = "";
        }

    }

HTML

<input type="radio" name="timecard" value="Yes">Yes<br>
<input type="radio" name="timecard" value="N/A">N/A<br>
<span id="radioError" style="font-size: 0.9em; color:red;"></span>

我希望跨度文本被javascript中的第二innerHTML覆盖。

2 个答案:

答案 0 :(得分:1)

假设timeCard是一个数组,而不是timeCard[1].value,您只是想检查timeCard[1]等于N/A

timeCard = ["one", "N/A"];

if (timeCard[1] == "N/A") {
  document.getElementById("radioError").innerHTML = "Please verify this field before submitting.";
} else {
  document.getElementById("radioError").innerHTML = "Please mitting.";
}
<span id="radioError" style="font-size: 0.9em; color:red;"></span>

答案 1 :(得分:0)

在没有完整代码的情况下,您应该使用.checked属性查看它是否被选中,而不是考虑到timeCard [1]的值始终为“ N / A”。

if (timeCard[1].checked) {
   document.getElementById("radioError").innerHTML = "Please verify this field before submitting.";
    }else{
        document.getElementById("radioError").innerHTML = "";
    }