【javascript練習問題】イベント処理

※本サイトはアフィリエイトリンクを掲載しています。
javascript

問題1 : クリックイベント

画面にボタンを作成します。
作成した「ボタン」をクリックしたら時に「クリックされました」のアラートを表示してください。

 

参考ソース①

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
    <input type="button" id="btn" value="ボタン" />
  </div>
</body>
<script>
  let btn = document.getElementById("btn");
  btn.addEventListener('click', function(){
    alert("クリックされました");
  });
</script>
</html>

 

参考ソース②

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
    <input type="button" id="btn" onclick="btnclick()" value="ボタン" />
  </div>
</body>
<script>
  function btnclick() {
    alert("クリックされました。");
  }
</script>
</html>

 

問題2 : フォーカスが外れた時のイベント

画面にinputタグを使用して入力欄を作成します。
作成した「入力欄」からフォーカスが外れた時に「フォーカスが外れました」のアラートを表示してください。

 

参考ソース①

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
    <input type="text" id="message" />
  </div>
</body>
<script>
  let message = document.getElementById("message");
  message.addEventListener('blur', function(){
    alert("フォーカスが外れました。");
  });
</script>
</html>

 

参考ソース②

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
    <input type="text" id="message" onblur="inputBlur()"/>
  </div>
</body>
<script>
  function inputBlur() {
    alert("フォーカスが外れました。");
  }
</script>
</html>

 

問題3 : 値が変更されたときのイベント

画面にselectタグを使用してプルダウンを作成します。
作成した「プルダウン」の値が変更されたときに「値が変更されました」のアラートを表示してください。

 

参考ソース①

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
 <select id="example">
       <option>選択肢1</option>
       <option>選択肢2</option>
       <option>選択肢3</option>
     </select>
  </div>
</body>
<script>
  let example = document.getElementById("example");
 example.addEventListener('change', function(){
    alert("値が変更されました");
  });
</script>
</html>

 

参考ソース②

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
    <select id="example" onchange="selectChange()">
      <option>選択肢1</option>
      <option>選択肢2</option>
      <option>選択肢3</option>
    </select>
  </div>
</body>
<script>
  function selectChange() {
    alert("値が変更されました。");
  }
</script>
</html>

 

問題4 : 練習問題(イベント処理 + 条件分岐 + 出力)

スイカ、メロン、ブドウ、肉団子の選択肢のプルダウンを作成します。
フルーツを選択した場合は、「フルーツです。」を画面に表示してください。
フルーツでなければ「フルーツではありません。」を画面に表示してください。

 

参考ソース

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div>
    <select id="food">
      <option>スイカ</option>
      <option>メロン</option>
      <option>ブドウ</option>
      <option>肉団子</option>
    </select>
  </div> <div id="result"></div>
</body>
<script>
  let food = document.getElementById("food");
  let result = document.getElementById("result");
  food.addEventListener('change', function(){
    if (food.value === "肉団子") {
      result.innerHTML = "フルーツではありません。";
    } else {
      result.innerHTML = "フルーツです。";
    }
  });
</script>
</html>

 

独学が難しい場合

現場レベルで通用するエンジニアを目指していて、プログラミングスクールを検討している方はRUNTEQがオススメです。

コメント