javascript를 사용하여 HTML 입력에서 "disabled"속성을 제거하려면 어떻게합니까?
<input id="edit" disabled>
onClick에서 입력 태그가 "disabled"속성으로 구성되지 않기를 원합니다.
답변:
요소의 disabled
속성을 false로 설정합니다 .
document.getElementById('my-input-id').disabled = false;
jQuery를 사용하는 경우 해당 항목은 다음과 같습니다.
$('#my-input-id').prop('disabled', false);
여러 입력 필드의 경우 대신 클래스별로 액세스 할 수 있습니다.
var inputs = document.getElementsByClassName('my-input-class');
for(var i = 0; i < inputs.length; i++) {
inputs[i].disabled = false;
}
어디 document
형태로 대체 할 수있다, 예를 들어, 그 형태의 내부 요소만을 찾을 수 있습니다. getElementsByTagName('input')
모든 입력 요소를 가져 오는 데 사용할 수도 있습니다 . 당신에 for
반복, 당신은 그 다음을 확인해야 할 것이다 inputs[i].type == 'text'
.
왜 그 속성을 제거하지 않습니까?
elem.removeAttribute('disabled')
elem.removeAttr('disabled')
jQuery("#success").removeAttr("disabled");
-이것은 나를 위해 작동합니다, 감사합니다!
removeAttribute
는 IE11에서 지원되는 것 같습니다. unknown
사용할 수 있음으로 표시되어 있으므로 IE를 열고 작동하는지 확인했습니다. 그렇습니다.
가장 좋은 대답은 removeAttribute입니다.
element.removeAttribute("disabled");
method 1 <input type="text" onclick="this.disabled=false;" disabled>
<hr>
method 2 <input type="text" onclick="this.removeAttribute('disabled');" disabled>
<hr>
method 3 <input type="text" onclick="this.removeAttribute('readonly');" readonly>
이전 답변의 코드는 인라인 모드에서 작동하지 않는 것 같지만 해결 방법이 있습니다.
method 1 <input type="text" onclick="this.disabled=false;" disabled> <hr> method 2 <input type="text" onclick="this.removeAttribute('disabled');" disabled>