복붙노트

[JQUERY] JQuery와 선택기에서 DOM 요소를 얻는 방법

JQUERY

JQuery와 선택기에서 DOM 요소를 얻는 방법

해결법


  1. 1.당신과 함께 원시 DOM 요소에 액세스 할 수 있습니다 :

    당신과 함께 원시 DOM 요소에 액세스 할 수 있습니다 :

    $("table").get(0);
    

    이상 간단하게 :

    $("table")[0];
    

    당신이 (내 경험) 그러나이 필요 많은 사실이 없습니다. 당신의 체크 박스의 예를 보자

    $(":checkbox").click(function() {
      if ($(this).is(":checked")) {
        // do stuff
      }
    });
    

    더 "jquery'ish"과 (IMHO)보다 간결하다. 당신이 수 그들 원한다면?

    $(":checkbox").each(function(i, elem) {
      $(elem).data("index", i);
    });
    $(":checkbox").click(function() {
      if ($(this).is(":checked") && $(this).data("index") == 0) {
        // do stuff
      }
    });
    

    이들 중 일부는 너무 또한 브라우저에서 도움이 마스크의 차이가 있습니다. 일부 속성은 다를 수 있습니다. 고전적인 예는 AJAX 호출입니다. 원시 자바 스크립트에서 제대로 이렇게하려면 XMLHttpRequest의 7 대체 케이스에 대한 있습니다.


  2. 2.편집 : 난 당신이 요소를 가져올 수 없습니다 가정에서 잘못 보인다. 다른 사람이 여기에 게시 것처럼, 당신은 그것을 함께 얻을 수 있습니다 :

    편집 : 난 당신이 요소를 가져올 수 없습니다 가정에서 잘못 보인다. 다른 사람이 여기에 게시 것처럼, 당신은 그것을 함께 얻을 수 있습니다 :

    $('#element').get(0);
    

    나는이 실제로 일치 된 DOM 요소를 반환 확인했습니다.


  3. 3.나는 문자열로 요소를 얻을 필요가 있었다.

    나는 문자열로 요소를 얻을 필요가 있었다.

    jQuery("#bob").get(0).outerHTML;
    

    어떤 당신에게 뭔가를 줄 것이다 :

    <input type="text" id="bob" value="hello world" />
    

    ... 문자열이 아닌 DOM 요소로.


  4. 4.당신이 DOM 요소와 직접 상호 작용해야 할 경우 클래스 이름은 단 하나 개의 요소 또는 다른에 가정으로, 당신은 아마 ID를 알 특정 요소와 상호 작용하려는 경우, 왜 그냥, 이후 document.getElementById를를 사용 옵션은 위험 할 경향이있다.

    당신이 DOM 요소와 직접 상호 작용해야 할 경우 클래스 이름은 단 하나 개의 요소 또는 다른에 가정으로, 당신은 아마 ID를 알 특정 요소와 상호 작용하려는 경우, 왜 그냥, 이후 document.getElementById를를 사용 옵션은 위험 할 경향이있다.

    그러나, 나는 그것이 매우 유연 대부분의 경우에 당신이, 당신이 jQuery를 상대방에게 제공하는 것을 사용하여 필요한 일을하는 법을 배워야한다고, 다른 사람에 동의하는 경향이있다.

    UPDATE는 : 코멘트를 기반으로 : 여기에 좋은 설명과 게시물은 다음과 같습니다 http://www.mail-archive.com/jquery-en@googlegroups.com/msg04461.html

    $(this).attr("checked") ? $(this).val() : 0
    

    그렇지 않은 경우는 체크 않다면 값을 반환하거나, 0 것입니다.

    () $ (이) .val 그냥 DOM에 도달이 확인 됨 여부, 요소의 속성 "값"을 받고있다.

  5. from https://stackoverflow.com/questions/1677880/how-to-get-a-dom-element-from-a-jquery-selector by cc-by-sa and MIT license