복붙노트

[JQUERY] 속성에 의해 선택 요소

JQUERY

속성에 의해 선택 요소

해결법


  1. 1.당신은 당신이 그들을 선택할 수 있습니다 의미합니까? 그렇다면, 예 경우 :

    당신은 당신이 그들을 선택할 수 있습니다 의미합니까? 그렇다면, 예 경우 :

    $(":checkbox[myattr]")
    

  2. 2.

    if ($('#A').attr('myattr')) {
        // attribute exists
    } else {
        // attribute does not exist
    }
    

    편집하다:

    myattr가 존재하지만 빈 문자열 또는 "0"인 경우 위는 다른 분기에 빠질 것입니다. 그 문제가 있다면 당신은 정의에 명시 적으로 테스트를해야한다 :

    if ($('#A').attr('myattr') !== undefined) {
        // attribute exists
    } else {
        // attribute does not exist
    }
    

  3. 3.나는 질문이 질문을 받았다 이후 오랜 시간이되었습니다 알고 있지만이 같은 명확하게하기 위해 수표를 발견 :

    나는 질문이 질문을 받았다 이후 오랜 시간이되었습니다 알고 있지만이 같은 명확하게하기 위해 수표를 발견 :

    if ($("#A").is('[myattr]')) {
        // attribute exists
    } else {
        // attribute does not exist
    }
    

    (AS 여기이 사이트에서 발견)

    문서는 약 여기에서 찾을 수 있습니다됩니다


  4. 4.이것은 작동합니다 :

    이것은 작동합니다 :

    $('#A')[0].hasAttribute('myattr');
    

  5. 5.자바 스크립트에서, ...

    자바 스크립트에서, ...

    null == undefined
    

    ... 사실 *를 반환합니다. 그것은 === ==와의 차이입니다. 당신이 더 나은 다른 방법으로 확인하는 길 이죠, 그래서 또한, 이름 (이 널 (null)과 같은 키워드가 아니에요)을 정의 할 수 있습니다 정의되지 않은. 가장 신뢰할 수있는 방법은 typeof 연산자의 반환 값을 비교하는 아마.

    typeof o == "undefined"
    

    그럼에도 불구하고, null로 비교하는 것은이 경우에 작동합니다.

    * 사실 미정의 미정 가정하면.


  6. 6.$ ( "입력 [ATTR]은"). 길이는 더 좋은 옵션이 될 수 있습니다.

    $ ( "입력 [ATTR]은"). 길이는 더 좋은 옵션이 될 수 있습니다.


  7. 7.내가 빠른 반환 한 게시 할 그들을 비교하는 것이라고 생각 때문에 몇 가지 아이디어 "대해서 typeof", JQuery와 ".is는"와 ".filter"을 사용하여 주위에 던져졌다. 대해서 typeof이 최선의 선택이 될 것으로 보인다. 다른 사람이 작동하지만, 이러한 노력의 JQ 라이브러리를 호출 할 때 분명한 성능 차이가있을 나타납니다.

    내가 빠른 반환 한 게시 할 그들을 비교하는 것이라고 생각 때문에 몇 가지 아이디어 "대해서 typeof", JQuery와 ".is는"와 ".filter"을 사용하여 주위에 던져졌다. 대해서 typeof이 최선의 선택이 될 것으로 보인다. 다른 사람이 작동하지만, 이러한 노력의 JQ 라이브러리를 호출 할 때 분명한 성능 차이가있을 나타납니다.


  8. 8.

    if (!$("#element").attr('my_attr')){
      //return false
      //attribute doesn't exists
    }
    

  9. 9.이 게시물에 사용 됐나 및 속성 선택 []에서와 같이, 당신은 쉽게 함수 (또는 프로토 타입)을 추가 할 수 있습니다 :

    이 게시물에 사용 됐나 및 속성 선택 []에서와 같이, 당신은 쉽게 함수 (또는 프로토 타입)을 추가 할 수 있습니다 :

    function hasAttr($sel,attr) {
        return $sel.is('['+attr+']');
    }
    

  10. 10.

    $("input#A").attr("myattr") == null
    

  11. 11.간단히:

    간단히:

    $('input[name*="value"]')
    

    더 많은 정보 : 공식 문서


  12. 12.속성 $ ( '[someAttribute]) 또는 $ ('입력 [someAttribute])는 또한 클릭 처리기와 같은 객체 불리언 점검을 수행하는 기능을 사용할 수있는 모든 요소를 ​​선택하는 것 외에도 :

    속성 $ ( '[someAttribute]) 또는 $ ('입력 [someAttribute])는 또한 클릭 처리기와 같은 객체 불리언 점검을 수행하는 기능을 사용할 수있는 모든 요소를 ​​선택하는 것 외에도 :

    만약 (! this.hasAttribute) ( 'myattr') {...


  13. 13.질문 전술 한 바와 같이 내가 의도 한 행동 NPM 패키지를 만들었습니다.

    질문 전술 한 바와 같이 내가 의도 한 행동 NPM 패키지를 만들었습니다.

    [NPM] 링크와 [github에]

    사용법은 매우 간단합니다. 예를 들면 :

    <p id="test" class="test">something</p>
    $("#test").hasAttr("class")
    

    true를 반환합니다.

    너무 CamelCase를 작동합니다.


  14. 14.특정 속성을 가진 요소를 선택하려면, 위의 답변을 참조하십시오.

    특정 속성을 가진 요소를 선택하려면, 위의 답변을 참조하십시오.

    주어진 jQuery를 요소가 난 작은 플러그인을 사용하고 특정 속성이 있는지 확인하려면 그 반환 사실 ajQuery의 컬렉션의 첫 번째 요소는이 속성이있는 경우 :

    /** hasAttr
     ** helper plugin returning boolean if the first element of the collection has a certain attribute
     **/
    $.fn.hasAttr = function(attr) {
       return 0 < this.length
           && 'undefined' !== typeof attr
           && undefined !== attr
           && this[0].hasAttribute(attr)
    }
    

  15. 15.JQuery와 문자열로 속성을 반환합니다. 따라서 당신은 세트가 있는지 확인하기 위해 해당 문자열의 길이를 확인하실 수 있습니다 :

    JQuery와 문자열로 속성을 반환합니다. 따라서 당신은 세트가 있는지 확인하기 위해 해당 문자열의 길이를 확인하실 수 있습니다 :

    if ($("input#A").attr("myattr").length == 0)
     return null;
    else
     return $("input#A").attr("myattr");
    
  16. from https://stackoverflow.com/questions/1097522/select-elements-by-attribute by cc-by-sa and MIT license