2015-05-26 3 views
0

У меня есть простой текстовый ввод в моей форме, который я хочу проверить на конкретное слово. Это довольно просто, но форма не обрабатывается моим кодом и на его отправке ничего не делает:JavaScript не обрабатывает ввод формы

Это HTML-форму для создания формы.

<div id="wrapper"> 
    <section><p id="showtime"></p></section> 
    <section><p id = "quest"></p></section> 
    <p id = "fieldA"></p> 
    <form method="post" action="" name="AnsForm" onsubmit="return checkForm()"> 
     <label class="choice" for="answer">Your Answer</label><br/> 
     <input type="text" name="answer"></input> 
    </form><br/> 
    <input type="submit" value="Submit"> 
    <div id="footer"> 
     <p>User1234</p> 
     <p>Level: </p><p id="level"></p> 
    </div> 
</div> 

И JavaScript функция, которая не работает в checkForm()

<script language="JavaScript"> 
var difficulty = "easy"; 
var question = "Name of the only mammal that lays eggs"; 


document.getElementById("quest").innerHTML = question; 
function startTime() { 
    var today=new Date(); 
    var h=today.getHours(); 
    var m=today.getMinutes(); 
    var s=today.getSeconds(); 
    m = checkTime(m); 
    s = checkTime(s); 
    document.getElementById('showtime').innerHTML = h+":"+m+":"+s; 
    var t = setTimeout(function() 
    {startTime()},500); 
} 

function checkTime(i) { 
    if (i<10) { 
    i = "0" + i; 
    } // add zero in front of numbers < 10 
    return i; 
} 

function checkForm() { 
    var answer = "platypus"; 
    var ansrs = document.forms["AnsForm"]["answer"].value; 
    var ansrL = ansr.toLowerCase(); 
    if (ansrL == answer) { 
     document.getElementById("fieldA").innerHTML = "Your answer is correct!";  

    } 
    else { 
     document.getElementById("fieldA").innerHTML = "Sorry, try again!"; 
     return false; 
    } 
} 


</script> 
+0

Прежде всего, почему вы поставили кнопку отправки из формы, которая должна быть до –

+0

Ох, правда, не заметил. Я помещаю его в форму, но все равно ничего не происходит, я отредактирую изменение – kiria67

ответ

0

Есть несколько исправлений:

var ansrs = document.forms["AnsForm"]["answer"].value; 
var ansrL = ansr.toLowerCase(); 
      ^^^^ wrong spelling, it is - ansrs 

Также кнопке отправки должны быть заключены в виде тега :

</form><br/> 
    <input type="submit" value="Submit"> <!-- move it inside form tag --> 
+0

Спасибо, полностью не видел, что – kiria67

Смежные вопросы