이 글의 주요 목적은 attr이 페이지 검색에서 요소 값을 얻는다는 것입니다. 따라서 페이지에서 값을 얻으려면 요소를 명확하게 정의해야 하는데, 이는 상대적으로 느립니다.
예:
<input name='test' type='checkbox'> $('input:checkbox').attr('type'); 返回checkbox. $('input:checkbox').attr('checked'); 返回undefined。
<input name='test' type='checkbox'>< / 코드>에 체크된 키워드가 없습니다. <code style="font-size:14px;line-height:22px;padding:4px 2px 0px;"><input name='test' type='checkbox'>
中没有checked关键字。
prop是从属性对象中取值,属性对象中有多少属性,就能获取多少值,不需要在页面中显示定义。
比如
예를 들어
$('input:checkbox').prop('checked'); 返回false 。
만약 사용자 정의 속성인 경우 속성 개체에 해당 속성이 없습니다. 따라서 prop은 정의되지 않은 상태를 반환합니다. 하지만 이 속성은 페이지에서 검색할 수 있으므로 attr을 얻을 수 있습니다.
HTML 요소의 사용자 정의된 DOM 속성을 처리하려면 attr 메소드를 사용하세요.
위 설명이 다소 모호할 수 있으니 몇 가지 예를 들어보세요.<a id="first" href="#" target="_self">超链接</a>
<a id="first" href="#" target="_self" uuu="guoguo">超链接</a>
HTML 요소의 고유 속성 읽기(할당됨)
<a href="#" target="_self">超链接</a> //attr和prop都读取成功 //attr("href")的值是:#//prop("href")的值是:http://localhost:4590/AttributeHandle/Index#alert($("a").attr("href"));alert($("a").prop("href"));
<a href="#" target="_self">超链接</a> <input type="checkbox" id="testCheckBox" value="测试CheckBox"/> alert($("a").attr("id"));//输出:undefine alert($("a").prop("id"));//输出:默认值""alert($("a").attr("checked"));//输出:undefine alert($("a").prop("checked"));//输出:undefine alert($("#testCheckBox").attr("checked"));//输出:undefine alert($("#testCheckBox").prop("checked"));//输出:默认值falsealert($("a").attr("class"));//输出:undefine alert($("a").prop("class"));//输出:默认值""
<a href="#" target="_self" uuu="guoguo">超链接</a> alert($("a").attr("uuu"));//输出:guoguoalert($("a").prop("uuu"));//输出:undefine
<a href="#" target="_self" uuu="guoguo">超链接</a> alert($("a").attr("abc"));//输出:undefinealert($("a").prop("abc"));//输出:undefine
<a href="#" target="_self" uuu="guoguo">超链接</a> $("a").attr("id","link");//id属性添加成功$("a").prop("id","link");//id属性添加成功
<a href="#" target="_self" uuu="guoguo">超链接</a>$("a").attr("abc", "myself");//成功添加属性abc="myself"$("a").prop("abc", "myself");//添加abc属性失败$("a").attr("action", "addAttribute");//成功添加属性action="addAttribute"$("a").prop("action", "addAttribute");//添加action属性失败
prop读取属性值:读取已赋值的固有属性会得到属性值,读取未赋值的固有属性会得到属性默认值,读取自定义属性时无论是否赋值均得到undefine。
prop设置属性值:prop只能设置固有属性值。
attr读取属性值:无论是固有属性还是自定义属性,attr只能读取元素中已有的属性值,读取元素中没有的属性值会返回undefine。
attr设置属性值:attr可以对任意属性设置属性值。
위 내용은 js에서 prop과 attr의 차이점에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!