[jquery] jQuery로 요소 유형 가져 오기

jQuery를 사용하여 jQuery를 사용하여 요소의 유형을 찾을 수 있습니까? 예를 들어 요소가 div, span, select 또는 input입니까?

예를 들어 jQuery를 사용하여 드롭 다운 목록에 값을로드하려고하지만 동일한 스크립트가 라디오 버튼 세트로 코드를 생성 할 수 있다면 다음과 같은 것을 만들 수 있습니까?

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

트리거 클래스 옆에 버튼이있는 드롭 다운 목록이 주어지면 버튼을 누를 때 elementType변수가 반환 select됩니다.



답변

jQuery 방식으로 요소 유형 가져 오기 :

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

jQuery없이 동일한 작업을 수행

var elementType = this.previousSibling.nodeName;

특정 요소 유형 확인 :

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


답변

또한 당신은 사용할 수 있습니다 :

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


답변

당신은 tagName속성과 attr('type')입력을 사용해야 합니다


답변

Distdev가 언급했듯이 여전히 입력 유형을 차별화해야합니다. 즉 말하자면,

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

당신을 말할 것이다 input,하지만 체크 박스 / 텍스트 / 라디오 구분하지 않습니다. 입력 인 경우 다음을 사용할 수 있습니다.

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

확인란 / 텍스트 / 라디오를 말하면 어떤 종류의 컨트롤인지 알 수 있습니다.


답변

당신은 사용할 수 있습니다 .is():

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

소스를 참조하십시오


답변

get (0) .tagName을 사용하십시오. 이 링크를보십시오


답변

tagName 대신 Nodename을 사용하십시오.

nodeName에는 tagName의 모든 기능 외에 몇 가지 기능이 포함되어 있습니다. 따라서 nodeName이 항상 더 나은 선택입니다.

DOM Core 참조