jQuery를 사용하여 "disabled" 속성을 제거하려면 어떻게 해야 합니까?
처음에 입력을 비활성화한 후 링크를 클릭하여 활성화해야 합니다.
지금까지 해 봤지만 효과가 없어요.
HTML:
<input type="text" disabled="disabled" class="inputDisabled" value="">
j쿼리:
$("#edit").click(function(event){
event.preventDefault();
$('.inputDisabled').removeAttr("disabled")
});
은 나에게 '아예'를 보여 준다.true
다음에 또 한 번.false
그러나 입력에 대해서는 변경되지 않습니다.
$("#edit").click(function(event){
alert('');
event.preventDefault();
alert($('.inputDisabled').attr('disabled'));
$('.inputDisabled').removeAttr("disabled");
alert($('.inputDisabled').attr('disabled'));
});
jQuery를 사용할 때는 항상 이 방법을 사용하여 요소를 활성화하거나 비활성화하십시오(이유에 대해서는 아래 참조).
고객님의 경우 다음과 같습니다.
$("#edit").click(function(event){
event.preventDefault();
$('.inputDisabled').prop("disabled", false); // Element(s) are now enabled.
});
「」를 사용하는가?
prop()
「」를 사용할 수 .attr()
/removeAttr()
걸걸하 기기?
으로는 ★★★★★★★★★★★★★★★★★」prop()
속성을 가져오거나 설정할 때 사용해야 합니다(예:autoplay
,checked
,disabled
★★★★★★★★★★★★★★★★★」required
(을)
「」를 사용해 .removeAttr()
해서 완전히 disabled
자체 - "는 "-"입니다.prop()
는 단순히 속성의 기본 부울 값을 false로 설정하는 것입니다.
하고 싶은 일을 할 수 있는 반면attr()
/removeAttr()
(이 경우처럼 이상하거나 문제가 있는 동작이 발생할 수 있습니다)를 실행하는 것은 아닙니다.
다음 발췌문(prop()에 대한 jQuery 문서에서 발췌)은 이러한 점에 대해 보다 자세히 설명합니다.
"특정 상황에서는 속성과 속성의 차이가 중요할 수 있습니다. 1 jQuery 1.6은
.attr()
메서드는 일부 속성을 검색할 때 속성 값을 고려하는 경우가 있으며, 이로 인해 일관성 없는 동작이 발생할 수 있습니다.1.6 1.6.prop()
method는 속성값을 취득하는 방법을 제공합니다..attr()
아트리뷰트일반적으로 속성은 시리얼화된HTML 속성을 변경하지 않고 DOM 요소의 동적 상태에 영향을 줍니다.를 들어, 「」가 있습니다.
value
인 "Drught"는 다음과 같습니다.disabled
및 """ " " " " " " " "checked
★★★★★★★★★★★★★★★★★★★★★★★..prop()
하여 설정해 .disabled
★★★★★★★★★★★★★★★★★」checked
.attr()
★★★★★★.val()
취득 및 설정에는 메서드를 사용해야 합니다.value
비활성화된 Atribute 사용을 제거하려면
$("#elementID").removeAttr('disabled');
비활성화된 Atribute 사용을 추가하려면
$("#elementID").prop("disabled", true);
즐기세요 :)
<input type="text" disabled="disabled" class="inputDisabled" value="">
<button id="edit">Edit</button>
$("#edit").click(function(event){
event.preventDefault();
$('.inputDisabled').removeAttr("disabled")
});
이렇게 하면
HTML:
<input type="text" disabled="disabled" class="inputDisabled" value="">
<div id="edit">edit</div>
JS:
$('#edit').click(function(){ // click to
$('.inputDisabled').attr('disabled',false); // removing disabled in this class
});
디세이블 상태를 전환하려고 하는 것 같습니다.마녀의 경우는, 다음의 질문을 사용해 주세요.
$(".inputDisabled").prop('disabled', function (_, val) { return ! val; });
비활성화된 속성을 제거합니다.
$('#inputDisabled').removeAttr('Disabled');
사용 안 함 속성 추가
$('#inputDisabled').attr('disabled', 'disabled' );
2018년, JQuery 없음
JQuery에 관한 질문인 것을 알고 있습니다.이 답변은 참고 자료입니다.
document.getElementById('edit').addEventListener(event => {
event.preventDefault();
[...document.querySelectorAll('.inputDisabled')].map(e => e.disabled = false);
});
간단하게 셋업할 수 있을 것 같아서
$(function(){
$("input[name^=radio_share]").click
(
function()
{
if($(this).attr("id")=="radio_share_dependent")
{
$(".share_dependent_block input, .share_dependent_block select").prop("disabled",false);
}
else
{
$(".share_dependent_block input, .share_dependent_block select").prop("disabled",true);
}
}
);
});
이게 나한테 유일하게 통했던 코드였어
element.removeProp('disabled')
주의:removeProp
가 아니라removeAttr
.
사용하고 있다jQuery 2.1.3
여기서.
이 질문에서는 특히 jQuery에 대해 언급하고 있습니다만, jQuery를 사용하지 않고 이 작업을 수행할 경우 바닐라 JavaScript에서는 다음과 같습니다.
elem.removeAttribute('disabled');
특수 선택기를 사용해 보십시오.
동작하지 않음:$('#ID_Unit').removeAttr("disabled");
동작:$('select[id=ID_Unit]:disabled').removeAttr("disabled");
모든 "선택" 컨트롤$('select:disabled').removeAttr("disabled");
"select"는 "type" 등과 같은 제어 유형입니다.
언급URL : https://stackoverflow.com/questions/13626517/how-to-remove-disabled-attribute-using-jquery
'programing' 카테고리의 다른 글
판다의 특정 기둥 인덱스에 기둥을 삽입하는 방법은 무엇입니까? (0) | 2022.10.02 |
---|---|
외부 키 참조 복합 기본 키 (0) | 2022.10.02 |
JavaScript에서 파일 입력 요소에 대해 "클릭" 이벤트를 프로그래밍 방식으로 실행할 수 있습니까? (0) | 2022.10.02 |
MySQL 스왑 사용 및 최종 oom_killer의 원인 (0) | 2022.10.02 |
JAXB란 무엇이며 왜 사용해야 합니까? (0) | 2022.10.02 |