1

私は JavaScript を初めて使用しますが、HTML テキスト入力ボックスで Enter キーを押したときに変数値を設定する簡単な方法が必要であると確信しています。

<input type='text' name='userEntry' class='inner-choice-entry' placeholder='Type your answer here' />

そして、例えば以下がバックグラウンドで実行されています:

var userEntry;
function determineUserChoice(e) {
    if (e.which == 13 || e.keyCode == 13) {
        userEntry = document.getElementsByName('userEntry').value;      
    }
};

以下は、ユーザーにメッセージを表示し、値の入力を促すために使用されます。

displayedLine = 'Please enter your name.';
$('.inner-content-text').html(displayedLine);
displayedChoiceLine = 'Your name is:';
$('.inner-choice-text').html(displayedChoiceLine);
determineUserChoice();
charName = userEntry;
$('.inner-content-sidebar-text-playername').html(charName);

私の人生では、Enterキーが押されたときにユーザーが入力したものに「userEntry」変数を設定する関数「determineUserChoice」を取得することはできません。これについては、おそらくもっと簡単な方法があります。私の目標は、一連の質問をユーザーに提示し、Enter キーが押された後にページに表示され、その後に追加のメッセージが表示されるようにすることです。

4

3 に答える 3

0

document.getElementsByNamenodeList単一の要素ではなく、 を返します。値を取得する前に要素を取得するためにインデックスを付ける必要があるため、次のようにする必要があります。

userEntry = document.getElementsByName('userEntry')[0].value;

ハンドラーをaddEventHandlerどこかにバインドしていると思いますが、そのコードは表示されませんでした。

于 2013-08-15T05:01:40.463 に答える