次のようなセレクターがあります。
<select id="patientSelect">
<option disabled selected style='display: none;' id="patient0">
Incoming Patients</option>
<option id="patient1"></option>
<option id="patient2"></option>
</select>
セレクターにプレースホルダータイプのテキスト(つまり、最初のオプション)が必要だったからです。そして、私のjavascriptを使用して、選択したオプションがpatient1で、ボタンをクリックすると、それが削除され、無効になっている「Incoming Patients」の表示に戻るようにしたかったのです。ジャバスクリプト:
$(".ui-btn").click(function(){
remove();
$('#patientSelect :selected').attr('selected', '0');
$('#patientSelect').change();
});
function remove(){
var x = document.getElementById("patientSelect");
x.remove(x.selectedIndex);
}
問題は、常に複数のオプションが削除されることです。そのため、「patient2」を削除して remove() を実行しようとすると、リストが長い空白のリストになります。すべての助けに感謝します。あまり厳しくしないでください。:P
編集 申し訳ありませんが、基本的に、テキスト 'Incoming Patients' (セレクターの最初のオプション) を決して削除しないでください。「function remove()」を何回実行しようとしても。他のオプションは問題なく削除できますが、最初のオプションは削除できません。これは可能ではないかもしれませんが、よくわかりません..オプションなしでセレクターにテキストを取得する別の方法があれば、それも問題ありません:-)
たぶん次のようなものです:
function remove(){
if(option != 1){
var x = document.getElementById("patientSelect");
x.remove(x.selectedIndex);
}
}