2017-05-31 16 views
0

が、私はボタンをクリックした後、入力から値を取りたい動作しますが、JavaScriptを - のaddEventListenerは「クリック」

var buttonToBinary = document.querySelector("#toBinary"); 
 
buttonToBinary.addEventListener('click', console.log(getInput())); 
 

 
function getInput() { 
 
    return document.querySelector("#inputSector").value; 
 
}
<input type="text" name="userInput" id="inputSector" value="aa" /> 
 
<button id="toBinary" type="submit">to binary</button>

getInput()がロードページに開始されたすべての時間関数はありません。私を助けてください。

+0

はあなたが好き、 'buttonToBinary.addEventListenerは、機能を追加する必要があります(、 'クリック' 機能(){ はconsole.log(か、getInput()) });' – user688

答えて

3

あなたは:

buttonToBinary.addEventListener('click', console.log(getInput())); 

あなたはaddEventListenerconsole.log(...)の戻り値を渡しています。その値はundefinedです。代わりに何をしたい

は、関数にそれをラップすることです:

var buttonToBinary = document.querySelector("#toBinary"); 
 
buttonToBinary.addEventListener('click', function() { 
 
    console.log(getInput()) 
 
}); 
 

 
function getInput() { 
 
    return document.querySelector("#inputSector").value; 
 
}
<input type="text" name="userInput" id="inputSector" value="aa" /> 
 
<button id="toBinary" type="submit">to binary</button>

0

はなぜHTMLでボタンをクリックして実装していませんか?このように:

function getInput() { 
 
console.log(document.querySelector("#inputSector").value); 
 
}
<html> 
 

 
    <head> 
 
    <link rel="stylesheet" href="style.css"> 
 
    <script src="script.js"></script> 
 
    </head> 
 

 
    <body> 
 
    <input type="text" name="userInput" id="inputSector" value="aa" /> 
 
    <button onclick="getInput()" id="toBinary" type="submit">to binary</button> 
 
    </body> 
 

 
</html>

関連する問題