Heim  >  Artikel  >  Web-Frontend  >  Löst perfekt das Problem, dass die Auswahloption in HTML nicht ausgeblendet werden kann.

Löst perfekt das Problem, dass die Auswahloption in HTML nicht ausgeblendet werden kann.

高洛峰
高洛峰Original
2017-02-15 14:07:557156Durchsuche

Ich bin zufällig während des Entwicklungsprozesses auf dieses Problem gestoßen, und das erste Mal, dass das Problem gelöst wurde, war Baidu. Die Ergebnisse sind wie folgt:

1. Die Lösung, display:none zuerst einzustellen, ist definitiv nicht machbar;
a Das Hinzufügen des Attributs „disabled“ zeigt an, dass die Option nicht verfügbar ist, sie wird jedoch nicht ausgeblendet.
b Wenn Sie die Option ausblenden möchten, können Sie sie nur aus dem DOM-Baum entfernen. und dann die Option löschen Die Option wird zwischengespeichert, und dann die Option aus dem Cache zu nehmen und zum DOM-Baum hinzuzufügen, wenn sie angezeigt werden soll
entspricht definitiv nicht den Anforderungen.
c. Die ultimative Lösung (auf Kompatibilität mit allen Browsern getestet): Fügen Sie der Option ein übergeordnetes Tag hinzu und stellen Sie das übergeordnete Tag auf „Ausblenden“ ein. Wenn Sie es anzeigen möchten, entfernen Sie es das übergeordnete Tag.

Allerdings sind alle oben genannten Methoden nutzlos

Die endgültige Lösung:

//将select通过clone方法保存
var select= $("#select").clone();

//删除所有的option
$("#select").find('option').remove();

//查找出需要显示的option并复制
var options = select.find("option[value=1]").clone();

//将需要显示的option添加到select中
$("#select").append(options);

//因为option.remove()不会刷新控件,需要将新的option切换上去
//这里排除了options.size() == 0的情况
$("#select").find('option').eq(0).attr("selected",true);
Das ist alles.

Weitere perfekte Lösungen für das Problem, dass die Auswahloption in HTML nicht ausgeblendet werden kann. Für verwandte Artikel achten Sie bitte auf die chinesische PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn