JavaScript를 사용하여 div의 내용을 지우려면 어떻게해야합니까? [닫은]


152

사용자가 내 페이지에서 버튼을 클릭하면 div의 내용이 지워 져야합니다. 이것을 달성하려면 어떻게해야합니까?


답변:


270

Javascript 만 (요청한대로)

페이지 어딘가에이 기능을 추가하십시오 (바람직하게 <head>)

function clearBox(elementID)
{
    document.getElementById(elementID).innerHTML = "";
}

그런 다음 클릭 이벤트에 버튼을 추가하십시오.

<button onclick="clearBox('cart_item')" />

JQuery에서 (참조 용)

JQuery를 선호하는 경우 다음을 수행 할 수 있습니다.

$("#cart_item").html("");

50
대체 jQuery :$("#cart_item").empty();
Rob Allen

.detach ()도 사용할 수 있습니까?
RyanP13

@ Tom Gullen은 DIV의 id를 함수에 전달하지 않고 함수 자체의 elementID를 작은 따옴표로 묶지 않고 저에게 효과적이었습니다. 감사합니다!
DPSSpatial

3
@ Tom Gullen : 해당 div 내의 노드와 관련된 이벤트 핸들러를 제거하지 마십시오.
bhavya_w

@Mic 의 대답은 약 250 배 빠릅니다. jsperf.com/innerhtml-vs-removechild
tleb

108

DOM 방식으로도 할 수 있습니다.

var div = document.getElementById('cart_item');
while(div.firstChild){
    div.removeChild(div.firstChild);
}

1
최고 수준의! jQuery와 동일 : $ ( "# cart_item"). empty (); 콘텐츠뿐만 아니라 DOM에서도 작동합니다. 큰!
Pedro Ferreira

이것이 선호 innerHTML = ''되는가? 그렇다면 왜 그런가?
Sukima

1
이보다 깨끗합니다 innerHTML = ''. 나는 개인적으로 여분의 몇 줄을 쓸 것입니다
dmo

1
@Sukima는이 방법이 선호하는 답변보다 빠르므로 짧은 코드보다 더 나은 성능이 필요한 경우 선택하십시오.
iiic

1
하나의 라이너로while(div.firstChild && div.removeChild(div.firstChild));
Russell Elfenbein
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.