需要有关getInput函数的帮助

时间:2015-02-20 16:46:24

标签: javascript html web

我的javascript代码出现问题。

<!DOCTYPE html>
<html>
    <head>
        <title>js-game</title>
        <script src="script.js" type="text/javascript"></script>
        <script src="story.js" type="text/javascript"></script>
        <link href="style.css" rel="stylesheet" type="text/css"/>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <div id="game">
            <ul id="output">
                <li onclick="main()">Click here to start!</li>
            </ul>
            <input autofocus id="inputLine" type="text">
            <p onclick="" id="enterInput">ENTER</p>
        </div>
    </body>
</html>



// Variables
var log="<li>Hello</li>";
var lastVar="";

// Functions
function getInput() {
    document.getElementById("enterInput").addEventListener("click", function() {
        return document.getElementById("inputLine").value;
        document.getElementById("inputline").value="";
    });
}
function output(output) {
    log=log + "<li>" + output + "</li>";
    document.getElementById("output").innerHTML=log;
}
function main() {
    output("What's your name?");
    alert(getInput());
}

您可能会看到我希望从<input type="text">获取ID为inputLine的输入。还有一个ID为enterInput的按钮。

但我回来的都是未定义的,而且我已经在这方面工作了很长时间,所以我感到沮丧。

抱歉英文不好。

1 个答案:

答案 0 :(得分:0)

尝试这样做:

document.getElementById("enterInput").addEventListener("click", getInput );

function getInput() {
    var val = document.getElementById("inputLine").value;
    //do something with val
    document.getElementById("inputLine").value="";
    return val;
}

请参阅this demo


或者使用getInput()

将其作为变量获取
document.getElementById("enterInput").addEventListener("click", function(event){
    var val = getInput();
    alert(val);
});

function getInput() {
    var val = document.getElementById("inputLine").value;
    document.getElementById("inputLine").value="";
    return val;
}

请参阅this demo