[JavaScript] ボタン押下で動的に要素を削除

投稿者: | 2021年2月15日

前回までの記事で、ボタン押下で動的に要素を追加するコードを実装してきましたが、

今回は、ボタン押下で動的に要素を削除する機能を実装します。

各要素の最後にある「remove」ボタンをクリックすることで

確認ダイアログが表示され、「OK」をクリックすると

そのボタンがある行が丸々削除されます。

html構成

htmlの構成はこのようになっています。

セレクトメニュー、テキストボックス、チェックボックス、ラジオボタン、ボタン、の順に並んでいます。

この最後のボタンを押下することで、その行に含まれるすべての要素が削除されます。

(ボタンが含まれる “div” 単位で削除。ボタンの「親要素」ですね。)

変数 “this”

「remove」ボタンを押下したときに、その要素そのものを取得したいので、”this”変数を使用します。

html中で、これを使った削除用関数を設定しています。

削除ロジック

削除ロジックとして、関数を定義します。

基本的には、要素変数に対して remove メソッドを使用するわけですが、今回の例では次の点がポイントとなります。

  • “this” で取得した要素の「親要素」に remove メソッドを適用
    (button 要素の上位の div 単位で削除したいため)
  • 削除の前には確認メッセージを表示し、「OK」の場合にのみ削除処理を続行

サンプルコード

動作確認のための全体のサンプルコードは以下。

(前回までのコードも全て含まれています。)

 

サンプルを稼働させれば、冒頭で示した挙動が得られるはずです。