前提
JavaScriptで「"りんご"と入力されたらフォーカスを外す機能」と「"りんご"と入力された後にフォーカスを外すと隣の数字が100になる機能」を用意しました。
実現したいこと
それぞれ一つずつであれば正常に機能するのですが、同時に実装すると後者のみ機能しなくなります。要するに"りんご"と入力したらフォーカスを外しつつ100と入力されるようにしたいです。
原因、解決法として何が考えられるでしょうか?
該当のソースコード
HTML
1<html> 2<head> 3 <meta charset="utf-8"> 4 <script src="script.js"></script> 5</head> 6<body> 7 <input type="text" id="fruit" onkeyup="func1()"> 8 <input type="text" id="number" value="0"> 9</body> 10</html>
JavaScript
1const fruit = document.getElementById("fruit"); 2const func1 = () => { 3 const elem = document.activeElement; 4 if(elem.value == 'りんご') { 5 elem.blur(); 6 } 7} 8 9window.addEventListener('DOMContentLoaded', ()=>{ 10 const list={"りんご":100}; 11 fruit.addEventListener('change',e=>{ 12 if(list[fruit.value]){ 13 number.value=list[fruit.value]; 14 } 15 }); 16});
回答2件
あなたの回答
tips
プレビュー