javascriptで、フォームの入力をトリガーになにかすることができるっぽい
フォームの入力が変更されたときの挙動はinputとchangeの2種類がある
inputは入力中随時、それに応答する
changeは入力が完了してフォーカスが外れたり、エンターが押されたときに応答する
実際のコードは以下を参照
コードは↑から借りた
const inputText = document.contactForm.inputText; inputText.addEventListener("change", () => { console.log("値が変更された"); }) inputText.addEventListener("input", () => { console.log("キーが押された"); })
document.contactFormのcontactForm自分で書いたformのnameなので、それに応じて変更する
document.contactForm.inputTextのinputTextは、フォーム全体の中のどの入力フォームかを指定するもの、入力のnameを書く
やりたいのは、フォームに値が入力されたとき、それを他のフォームにもコピー
中括弧の中にやりたいことを書く
inputText.addEventListener("change", () => { console.log("Updated value"); document.form1.date_end.value = document.form1.date_beg.value; document.form1.hour_end.value = document.form1.hour_beg.value; document.form1.min_end.value = Number(document.form1.min_beg.value) + 2; })
自分の場合、時刻のフォームが2つあって、
最初の開始時刻のフォームに書かれたものを終了時刻のフォームにコピーする
ただし、分は2分後
Number はjavascriptの仕様的に、文字列を数字に変換してから四則演算しないといけないので必要
ランキング参加中です
↓クリックしていただけると嬉しいです〜