Ist es mit jQuery möglich, den Typ eines Elements mit jQuery herauszufinden? Ist das Element beispielsweise ein div, span, select oder input?
Wenn ich beispielsweise versuche, Werte mit jQuery in eine Dropdown-Liste zu laden, aber dasselbe Skript Code in eine Reihe von Optionsfeldern generieren kann, kann ich Folgendes erstellen:
$('.trigger').live('click', function () {
var elementType = $(this).prev().attr(WHAT IS IT);
});
Bei einer Dropdown-Liste mit einer Schaltfläche daneben mit der Triggerklasse sollte meine elementType
Variable select
nach dem Drücken der Schaltfläche zurückkehren.
Antworten:
Den Elementtyp auf jQuery-Art abrufen:
das Gleiche ohne jQuery tun
Überprüfung auf bestimmten Elementtyp:
quelle
nodeName
unterstützen mehr Arten von Elementen, und die Unterstützung von IE5.5 sollte kein Problem mehr sein. Daher sehe ich in der obigen Antwort keine Probleme beim ÄnderntagName
aufnodeName
. Beide funktionieren gut für Elemente, und letztere funktionieren auch für Textknoten, Attribute usw.$(this).is("input");
Sie können auch verwenden:
quelle
Sie sollten
tagName
Eigenschaft undattr('type')
für Eingaben verwendenquelle
Wie Distdev angedeutet hat, müssen Sie den Eingabetyp noch unterscheiden. Das heißt,
Ich werde es Ihnen sagen
input
, aber das unterscheidet nicht zwischen Kontrollkästchen / Text / Radio. Wenn es sich um eine Eingabe handelt, können Sie diese verwendenum Ihnen das Kontrollkästchen / den Text / das Radio mitzuteilen, damit Sie wissen, um welche Art von Steuerung es sich handelt.
quelle
Sie können verwenden
.is()
:siehe Quelle
quelle
Verwenden Sie get (0) .tagName. Siehe diesen Link
quelle
Verwenden Sie Nodename über tagName:
siehe DOM Core
quelle