>  기사  >  웹 프론트엔드  >  jQuery_jquery에서 prop() attr() 사용에 대한 자세한 설명

jQuery_jquery에서 prop() attr() 사용에 대한 자세한 설명

WBOY
WBOY원래의
2016-05-16 15:58:221173검색

HTML 요소 자체에 내재된 속성을 처리할 때 prop 메소드를 사용하세요.
HTML 요소의 사용자 정의 DOM 속성을 처리할 때 attr 메소드를 사용합니다.

jquery 상위 버전에 prop 메서드가 도입된 후 언제 prop을 사용해야 하나요? attr은 언제 사용하나요? 둘 사이의 차이점은 무엇입니까? 이러한 문제가 발생합니다.

둘의 차이점에 대한 답변은 온라인에 많이 있습니다. 여기서 제 생각을 말씀드리자면 제 생각은 매우 간단합니다.

HTML 요소 자체에 내재된 속성을 처리할 때 prop 메소드를 사용하세요.
HTML 요소의 사용자 정의 DOM 속성을 처리할 때 attr 메소드를 사용합니다.

위의 설명은 다소 모호할 수 있습니다. 몇 가지 예를 들어보세요.

코드 복사 코드는 다음과 같습니다.

http://www.baidu.com" target="_self" class="btn">바이두

이 예에서 요소의 DOM 속성에는 "href, target 및 class"가 포함됩니다. 이러한 속성은 W3C 표준에도 포함되어 있거나 IDE에서 지능적으로 프롬프트될 수 있습니다. 나타나는 속성을 고유 속성이라고 합니다. 이러한 속성을 다룰 때는 prop 메소드를 사용하는 것이 좋습니다.

코드 복사 코드는 다음과 같습니다.

이 예에서 요소의 DOM 속성에는 "href, id 및 action"이 포함됩니다. 분명히 처음 두 개는 고유한 속성인 반면, 후자의 "action" 속성은 요소 자체에 이 속성이 없습니다. 속성. 이는 사용자 정의 DOM 속성입니다. 이러한 속성을 처리할 때는 attr 메소드를 사용하는 것이 좋습니다. prop 메서드를 사용하여 값을 가져오고 속성 값을 설정하면 정의되지 않은 값이 반환됩니다.

또 다른 예:

코드 복사 코드는 다음과 같습니다.

보이나요
보이나요

checkbox, radio 및 select와 같은 요소의 경우 selected 속성은 "checked" 및 "selected"에 해당하므로 이러한 속성도 고유한 속성이므로 올바른 결과를 얻으려면 prop 메서드를 사용해야 합니다.

코드 복사 코드는 다음과 같습니다.

$("#chk1").prop("checked") == false
$("#chk2").prop("checked") == true

위의 attr 메소드를 사용하면 다음과 같이 나타납니다.

코드 복사 코드는 다음과 같습니다.

$("#chk1").attr("checked") == 정의되지 않음
$("#chk2").attr("checked") == "checked"

위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.