349 Stimmen

Elementtyp mit jQuery ermitteln

Ist es möglich, mit jQuery den Typ eines Elements herauszufinden? Ist das Element zum Beispiel ein div, span, select oder input?

Wenn ich zum Beispiel versuche, Werte in eine Dropdown-Liste mit jQuery zu laden, aber das gleiche Skript kann Code in eine Reihe von Optionsfeldern generieren, könnte ich etwas wie erstellen:

$('.trigger').live('click', function () {
   var elementType = $(this).prev().attr(WHAT IS IT);
});

Bei einer Dropdown-Liste mit einer Schaltfläche daneben mit dem Auslöser Klasse, meine elementType Variable sollte zurückgeben select wenn die Taste gedrückt wird.

635voto

adeneo Punkte 307329

Abrufen des Elementtyps auf jQuery-Art:

var elementType = $(this).prev().prop('nodeName');

dasselbe ohne jQuery tun

var elementType = this.previousSibling.nodeName;

Prüfung auf bestimmten Elementtyp:

var is_element_input = $(this).prev().is("input"); //true or false

67voto

Ali Punkte 5920

Können Sie auch verwenden:

$("#elementId").get(0).tagName

25voto

Distdev Punkte 2294

Sollten Sie tagName Eigentum und attr('type') für Eingaben

20voto

James Toomey Punkte 5343

Wie Distdev bereits angedeutet hat, muss die Art der Eingabe noch unterschieden werden. Das heißt, dass,

$(this).prev().prop('tagName');

wird Ihnen sagen input aber das unterscheidet nicht zwischen Kontrollkästchen/Text/Radio. Wenn es eine Eingabe ist, können Sie dann

$('#elementId').attr('type');

um Ihnen mitzuteilen, ob es sich um ein Kontrollkästchen, einen Text oder ein Radio handelt, so dass Sie wissen, um welche Art von Kontrolle es sich handelt.

13voto

Mohammed Sufian Punkte 1693

Können Sie .is() :

  $( "ul" ).click(function( event ) {
      var target = $( event.target );
      if ( target.is( "li" ) ) {
         target.css( "background-color", "red" );
      }
  });

siehe source

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X