web-dev-qa-db-ja.com

jQuery選択リストはすべてのオプションを削除します

<select>リストがあります。このリストにはいくつかのオプションが設定されていますが、それらのオプションを削除して再起動したいです。

私はjQueryを使用していますが、次のことを試しました:

$("#selectId").length = 0;

しかし、これは効果がないようです。

私の問題の一部は、Firebugを使用してJavaScriptをデバッグしているのに、デバッガーがブレークポイントでブレークしないため、何が起こっているのかわからないことです。 JavaScriptがHTMLファイルの<head>内にあるときに中断する必要がありますか?

31
Richbits

これはするでしょう:

$('#selectId').html('');
50
David Hedlund

ちょうど$("#selectId option").remove();も機能します。

28
AKX

$("#selectId").empty();は私のために働きます。

$("#selectId option").remove();はDOMから選択を削除しました。

現在jQuery JavaScript Library v1.7.1を使用しています

11
John Forbes

これを達成する最速の方法:

$("#selectId").empty();

以下にいくつかのテストを示します: http://jsperf.com/find-remove-vs-empty

私はこれらのテストを信用していません。このスタックオーバーフローの質問を参照してください: どのように選択ボックスのすべてのオプションを削除し、1つのオプションを追加してjQueryで選択しますか?

6
DR.

Jqueryがない場合:

javascript SELECT remove()

1
lance
$("#selectId").options.length = 0;

JQueryセレクターを使用しているため、実際には記述どおりに機能しません。ただし、選択リストでストレートDOM getElementByIdを使用した場合は機能します。 AKXまたはd。のいずれかの応答が正しい設定になります。

1
RwwL

複数選択ドロップダウンでこれを試してください。

$( '#FeatureId')。multiselect( "deselectAll"、false).multiselect( "refresh");

0
Ahsan Aftab