프로그래밍 언어/jQuery, ajax

jQuery로 input을 disabled/ enable 하는 방법

Rateye 2021. 6. 9. 10:27
728x90
반응형
질문 : jQuery로 입력을 비활성화 / 활성화 하시겠습니까?

$input.disabled = true; 

또는

$input.disabled = "disabled"; 

표준 방법은 무엇입니까? 반대로 비활성화 된 입력을 어떻게 활성화합니까?

답변

disabled 속성을 변경하려면 .prop() 함수를 사용해야합니다.

$("input").prop('disabled', true); $("input").prop('disabled', false); 

.prop() 함수는 존재하지 않지만 .attr() 은 유사합니다.

비활성화 된 속성을 설정합니다.

$("input").attr('disabled','disabled'); 

다시 활성화하려면 적절한 방법은 .removeAttr()

$("input").removeAttr('disabled'); 

항상 실제 DOM 객체에 의존 할 수 있으며 하나의 요소 만 처리하는 경우 다른 두 옵션보다 약간 더 빠릅니다.

// assuming an event handler thus 'this' this.disabled = true; 

.prop() 또는 .attr() 메서드를 사용할 때의 장점은 선택한 항목의 여러 속성을 설정할 수 있다는 것입니다.

참고 : 1.6에는 removeAttr() 과 비슷하게 들리는 .removeProp() 메서드가 있지만 문서에서 발췌 한 'disabled' 와 같은 기본 속성에는 사용해서는 안됩니다.

참고 :이 메서드를 사용하여 선택됨, 비활성화 됨 또는 선택됨과 같은 기본 속성을 제거하지 마십시오. 이렇게하면 속성이 완전히 제거되고 일단 제거되면 요소에 다시 추가 할 수 없습니다. 대신 .prop ()를 사용하여 이러한 속성을 false로 설정하십시오.

사실,이 방법에 대한 합법적 인 용도가 많이 있는지 의심 스럽습니다. 부울 소품은 1.5에서 "속성"대응 물처럼 "제거"하는 대신 거짓으로 설정해야하는 방식으로 수행됩니다.

출처 : https://stackoverflow.com/questions/1414365/disable-enable-an-input-with-jquery
728x90
반응형