あなたは、単に変数を宣言することで、var nameInput
を言うことを行い、それにDOMノードを割り当てることができます。
var nameInput = document.getElementById('name');
注ことはではありませんname
であるため、implementation-dependent reserved keyword in JavaScriptです。
スタイルオブジェクトにアクセスするには、単にnameInput.style...
を使用します。 visibility
プロパティを更新する場合は、nameInput.style.visibility = 'visible'
を入力します。
あなたはそれが価値だ取得したい場合は、あなたがこれを行うことができます:あなたは、動的にユーザー入力として、その値を取得する場合
console.log(nameInput.value);
var gameOver = true;
if (gameOver) {
var nameInput = document.getElementById('name');
nameInput.style.visibility = 'visible';
console.log('DOM node: ' + nameInput);
console.log('Value: ' + nameInput.value);
}
<input id="name" type="text" class="name" style="visibility: hidden;" />
を、あなたが必要となります.addEventListener()
を使用してイベントバインディングを読み取る。 JSは、は反応しないです。つまり、ユーザーがページとやりとりしたときに変数を動的に更新するという意味です。体制はこれです:
- ユーザーは何らかのイベントを引き起こします。この場合、
onInput
、onChange
、onBlur
...イベントを聞きたい場合は、
- JSロジックでは、その要素から放出されたこのイベントをリッスンする必要があります。これは、イベントリスナーをDOMノードにバインドすることによって行われます。
var gameOver = true;
if (gameOver) {
var nameInput = document.getElementById('name');
nameInput.style.visibility = 'visible';
console.log('DOM node: ' + nameInput);
console.log('Value: ' + nameInput.value);
}
nameInput.addEventListener('input', function() {
console.log('Updated value: ' + this.value);
});
<input id="name" type="text" class="name" style="visibility: hidden;" />
返信いただきありがとうございます。しかし、ボックスに何かを入力する前にログを記録するように見えるので、値は常に ""です – user8570650
@ user8570650 JSは反応がないからです。ユーザーが何かを入力したときに値を取得するには、[イベントリスナーをバインドする]必要があります(https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener)。 – Terry
ありがとう)) – user8570650