在下面的if语句中,即使答案为10,也仅执行else块!

的JavaScript



$("#correctOne").hide();
$("#incorrectOne").hide();

function myFunction() {
  var inputOne = $("#inputOne").value;
  if (inputOne === 10) {
    $("#correctOne").show();

  } else {
    $("#incorrectOne").show();

  }
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<h1>What number am I thinking of?</h1>
<p>Divide me by four and my remainder is two. I am net if you see me through the looking glass.</p>
<form>
  <input id="inputOne" type="text" placeholder="Answer Here">

  <button onclick="myFunction()">submit</button>
</form>
<h2 id="correctOne">Yes!</h2>
<h3 id="incorrectOne">Nope!</h3>

最佳答案

.value是JavaScript,仅适用于InputElements,您具有jQuery对象$("#inputOne'),因此需要.val()

接下来,如果在该字段中输入10,则inputOne是"10",而不是10,但是===也会比较类型。

请改用==

关于javascript - 输入字段值的相等比较无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41517494/

10-12 07:28