[javascript] <input>에“readonly”속성을 추가하는 방법은 무엇입니까?

readonly특정에 <input>어떻게 추가 할 수 있습니까? .attr('readonly')작동하지 않습니다.



답변

jQuery <1.9

$('#inputId').attr('readonly', true);

jQuery 1.9 이상

$('#inputId').prop('readonly', true);

prop과 attr의 차이점에 대해서 더 읽어보세요.


답변

사용 ) ($ .prop를

$("#descrip").prop("readonly",true);

$("#descrip").prop("readonly",false);


답변

읽기 전용은 html에 정의 된 속성이므로 속성처럼 취급하십시오.

편집 할 수없는 작업을하려면 작업중인 객체에 readonly = “readonly”와 같은 것이 있어야합니다. 그리고 다시 편집 할 수있게하려면 readonly =“와 같은 것이 없습니다 (올바르게 이해하면 표준이 아닙니다). 속성을 전체적으로 제거해야합니다.

따라서 jquery를 사용하여 추가하고 제거하는 것이 합리적입니다.

읽기 전용으로 설정하십시오.

$("#someId").attr('readonly', 'readonly');

읽기 전용을 제거하십시오.

$("#someId").removeAttr('readonly');

이것이 실제로 나를 위해 일한 유일한 대안이었습니다. 그것이 도움이되기를 바랍니다!


답변

.attr('readonly', 'readonly')트릭을해야합니다. 당신은 .attr('readonly')단지 그것을 하나를 설정하지 않고, 값을 반환합니다.


답변

“disabled”는 POST에서 입력이 전송되는 것을 제외한다고 생각합니다.


답변

.removeAttr을 사용하여 읽기 전용을 비활성화 할 수 있습니다.

$('#descrip').removeAttr('readonly');


답변

읽기 전용을 활성화하려면 :

$("#descrip").attr("readonly","true");

읽기 전용 비활성화

$("#descrip").attr("readonly","");