速報

AWS SDK for pandasのIceberg書き込みにSQL注入|Glueの変更権限も点検

CATEGORY

【jQuery】select要素のoptionを削除する

※本ページのリンクにはプロモーションが含まれています。

【jQuery】select要素のoptionを削除する

目次

jQueryでselect要素のoptionを削除する方法のご紹介です。

本記事では「option」を削除する方法を簡単なサンプルをまじえてご紹介しています。

select要素とは、一般的にセレクトボックスと呼ばれるフォーム内で使用する要素になります。フォームや一覧ページなどでソートする際、ソート順の選択に使用ことが多いかと思います。表示としましては、プルダウンのリストの中に複数の選択肢が用意されていて、リストの中から一つの値を選択する形となります。

具体的には下記のような表示となります。

optionを削除するだけであれば直接ソースを修正すれば良いのですが、今回select要素のoptionをjQueryで削除することになった経緯として、HTMLが直接編集できない領域、いわゆる外部のシステムが自動で追加したselect要素のoptionを削除したかったため、jQueryでスクリプトを作成した次第です。

今回はシステムが追加したoptionを削除するために使用しましたが、他に考えられる用途として、月や日によって自動でoptionの選択肢を減らしたり、ラジオボタンやチェックボックスといった他のフォーム要素の選択によって値を変更するなど、様々な使い方ができるかと思います。

select要素のoptionの削除方法をお探しの方の参考になれば幸いです。

本記事の内容

  • select要素を取得する方法
  • select要素の最初のoptionを削除する
  • select要素の最後のoptionを削除する
  • select要素のn番目のoptionを削除する
  • select要素のoptionの値を指定して削除する

では、解説していきます。

スポンサーリンク

select要素を取得する方法

最初にselect要素を取得します。下記の例ですとname属性を指定して取得していますが、idやclassで取得いただいても問題ありません。記述に応じて取得方法をご検討ください。

HTML

<select name="area">
  <option value="北海道地方">北海道地方</option>
  <option value="東北地方">東北地方</option>
  <option value="関東地方">関東地方</option>
  <option value="中部地方">中部地方</option>
  <option value="近畿地方">近畿地方</option>
  <option value="中国地方">中国地方</option>
  <option value="四国地方">四国地方</option>
  <option value="九州地方">九州地方</option>
</select>

JS

var selectbox = $('select[name=area]');

以降は上記の方法で取得したselect要素に対して、何番目もしくは値を削除してoptionを削除する方法をご紹介していきます。

select要素の最初のoptionを削除する

取得したselect要素の最初のoptionを削除する方法になります。

childrenに疑似クラスを指定してoptionを指定する方法と、jQueryのfirst()を使用する方法をご紹介しています。

JS

chldrenに疑似クラスを指定した方法になります。children()の引数に疑似クラスを指定することができます。疑似クラスを指定してoptionの最初の要素に処理を実行します。

var selectbox = $('select[name=area]');

selectbox.children('option:first-child').remove();

JS

jQueryのfirst()を使用した方法になります。first()を使用することで、要素の中に存在する最初の要素だけを取り出して削除することができます。

var selectbox = $('select[name=area]');

selectbox.children().first().remove();

スポンサーリンク

select要素の最後のoptionを削除する

取得したselect要素の最後のoptionを削除する方法になります。

childrenに疑似クラスを指定してoptionを指定する方法と、jQueryのlast()を使用する方法をご紹介しています。

取得したselect要素の最後のoptionを削除する方法になります。childrenに指定する方法と、lastを使用する方法をご紹介しています。

JS

chldrenに疑似クラスを指定した方法になります。children()の引数に疑似クラスを指定することができます。疑似クラスを指定してoptionの最初の要素に処理を実行します。

var selectbox = $('select[name=area]');

selectbox.children('option:last-child').remove();

JS

jQueryのlast()を使用した方法になります。last()を使用することで、要素の中に存在する最後の要素だけを取り出して削除することができます。

var selectbox = $('select[name=area]');

selectbox.children().last().remove();

select要素のn番目のoptionを削除する

取得したselect要素のn番目のoptionを削除します。n番目の要素の指定は、children()の引数に疑似クラスを使用して行います。疑似クラスはCSSと同じ記述でn番目の要素を取得、削除が可能となります。

JS

var selectbox = $('select[name=area]');

selectbox.children('option:nth-child(3)').remove();

もし、4番目の要素を削除したい場合はnth-child(3)の中身を4に変更して実行いただければと思います。

スポンサーリンク

select要素のoptionの値を指定して削除する

最後に、取得したselect要素の中から特定の値を持つoptionを削除する方法のご紹介です。

children()の引数に属性と値を指定することで特定の値を持つoptionを削除することができます。

JS

var selectbox = $('select[name=area]');

selectbox.children('option[value=北海道地方]').remove();

もし、「九州地方」のoptionが削除したい場合は「北海道地方」を「九州地方」に変えることで削除することが可能となります。

jQueryを使うときは、基本的にidやclass、タグ名をに指定することが多いですが、属性も指定することが可能となります。セレクタに指定することができる値を多く知っておくことで要素の取得方法の幅広がり、結果としてjQueryで実現できることが増えますので、おすすめです。

以上、jQueryでselect要素のoptionを削除する方法のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

セレクタ

CSSのスタイルやJavaScriptの処理を当てる対象の要素を指定するための書き方。「.class」「#id」など。

詳しく見る