我如何验证用户输入是否与给定的字符串相同? Java脚本

时间:2018-12-02 11:32:47

标签: javascript validation user-input

我需要计算用户按下“验证”按钮后有多少正确答案:

i need to count how many correct answers the user has after pressing a 'verify' button

表单的代码:

  <form>
<h5> Write the ing <i>ing</i> of the verbs.
  <ol>
    <li> live   → <input type="text" name="10" id="10"> </li>
    <li> stay  → <input type="text" name="11"> </li>
    <li> run    → <input type="text" name="12"> </li>
    <li> win    → <input type="text" name="13"> </li>
    <li> cyrcle → <input type="text" name="14"> </li>
  </ol>

2 个答案:

答案 0 :(得分:1)

首先,如评论所述,您应该处理您的问题。 您正在寻找一种使用其name属性获取DOM元素值的方法。 有一个名为document.querySelector()的函数,它将CSS选择器作为参数。您要寻找的是input[name="10"],其中10是名称。

通过循环,您可以迭代10到14之间的所有值。

for (let i = 10; i < 15; i++){
       const user = document.querySelector(`input[name="${i}"]`).value;
}

现在将其与实际值进行比较,然后随便使用它。

这是一个工作的小提琴:

https://jsfiddle.net/2a4dpz59/18/

答案 1 :(得分:0)

要比较Javascript中的两个字符串,您可以编写如下内容:

if (document.getElementById("id").value === "correct answer") {
  /* your code here */
}

只需确保您的id属性是否有效(理想情况下,该属性应以小写字母开头)。

如果您希望对字符串的比较不区分大小写,则可以将它们都转换为小写,如下所示(或大写无关紧要):

if (document.getElementById("id").value.toLowerCase() === "correct answer".toLowerCase()) {
  /* your code here */
}