Wie kann ich überprüfen, ob ein Element ein Dropdown-Listenelement oder ein Texteingabeelement ist, wenn man seine ID angibt?

7

Wie kann ich in Javascript, wenn die id eines Elements (in einem String -Format) angegeben ist, prüfen, ob sich id des Elements auf ein Dropdown-Listenelement oder ein Texteingabeelement bezieht?

Die Funktion sollte true zurückgeben, wenn sich id auf ein Dropdown-Listenelement ( <select> ) oder ein Texteingabeelement bezieht und andernfalls auf false .

    
omega 10.07.2012, 15:03
quelle

4 Antworten

13

Versuchen Sie es mit: document.getElementById('idNameGoesHere').tagName

Also könnte die Funktion sein:

%Vor%

Sie könnten dies erweitern, um auch nach <textarea> zu suchen.

BEARBEITEN: Oder wählen Sie die Antwort von jbabey, da sie nodeName verwendet und besser formatiert ist.

anscheinend nodeName hat eine breitere Browserunterstützung.

    
jfrej 10.07.2012, 15:05
quelle
20

Wenn Sie bereits jquery haben, können Sie die is-Funktion verwenden:

%Vor%

oder vielleicht

%Vor%

wenn Sie auch ein Textfeld einfügen möchten

oder

%Vor%

(dieser Wert gibt true zurück, wenn es sich um einen Text oder ein Dropdown oder eine Eingabe handelt, die keine Schaltfläche ist).

Sie haben die ganze Macht der jquery-Selektoren , um Ihre Suchanfrage genau Ihren Bedürfnissen anzupassen.

Demonstration: Ссылка (versuche, den HTML-Code zu ändern)

    
Denys Séguret 10.07.2012 15:05
quelle
3

Sie können die Eigenschaften nodeName und type der DOM-Elemente verwenden, um dies zu bestimmen. Keine externen Bibliotheken sind erforderlich.

%Vor%

Arbeitsbeispiel: Ссылка

    
jbabey 10.07.2012 15:14
quelle
0
%Vor%

Sie können das dom-Element abrufen und dann den TagName

überprüfen     
Parv Sharma 10.07.2012 15:08
quelle

Tags und Links