使用enter键调用函数

时间:2014-02-04 19:16:56

标签: javascript jquery html

我正在为一个简单的Web应用程序编写代码,该应用程序在键入时每分钟告诉您一个单词。它设置在一个表格中,完成后有一个按钮可以单击。这虽然浪费了一些时间,但反过来会影响结果。当我按下按钮时,我试图想出一种方法来调用相同的功能。

这是我的功能。

function finishTest() {
    finish = new Date();
    endType = finish.getTime();
    totalTime = ((endType - startType) / 1000);
    speed = Math.round((word/totalTime) * 60);
    var totalTime1 = totalTime.toFixed(2);

    if (document.form.typed.value == document.form.textArea.value) {
        document.getElementById("correct").innerHTML = "You were able to type a  " + word + " word sentence in "
            + totalTime1 + " seconds, a speed of roughly " + speed + " words per minute!";
    }
}

这是我希望通过按Enter键来调用函数的表。

<tr>
    <td colspan=2>
        <center>
            <input id = "typed" type=text name="typed" size=45>
            <input type=button value="FINISH!"  name="finish"onClick="finishTest()">
        </center>
    </td>
</tr>

3 个答案:

答案 0 :(得分:0)

在您的文档中添加此内容

$(document).keydown(function(e){
    if (e.keyCode == 13) { 
       finishTest();
       return false;
    }
});

或者,如果您希望它专门应用于该表,我确信您可以将$(文档)更改为$(“#typed”)

答案 1 :(得分:0)

您可以使用eventlistener启动您的功能。

见:

execute function on enter key

答案 2 :(得分:0)

您可以这样做:

document.getElementById('typed').addEventListener('keyup', function(e) {
   if (e.keyCode === 13)
       finishTest();
});

这将侦听输入你的textBox并激活你的功能,

请参阅此FIDDLE以获取示例