이것이 Firefox에서 Firebug가 찾은 것입니다.
다른 브라우저에서도 동일합니까?
그렇다면 그 이유는 무엇입니까?
이것이 Firefox에서 Firebug가 찾은 것입니다.
다른 브라우저에서도 동일합니까?
그렇다면 그 이유는 무엇입니까?
답변:
예, 모든 브라우저는 비활성화 된 입력을 읽기 전용이므로 제출해서는 안됩니다.
자세한 정보 (섹션 17.12.1)
속성 정의
disabled [CI] 폼 컨트롤로 설정하면이 부울 속성은 사용자 입력 컨트롤을 비활성화합니다. 설정하면 disabled 속성이 요소에 다음과 같은 영향을 미칩니다.
- 비활성화 된 컨트롤에는 포커스가 없습니다.
- 탭 탐색에서 비활성화 된 컨트롤을 건너 뜁니다.
- 비활성화 된 컨트롤은 성공할 수 없습니다.
다음 요소는 disabled 속성을 지원합니다 : BUTTON, INPUT, OPTGROUP, OPTION, SELECT 및 TEXTAREA.
이 속성은 상속되지만 로컬 선언은 상속 된 값보다 우선합니다.
비활성화 된 요소가 렌더링되는 방법은 사용자 에이전트에 따라 다릅니다. 예를 들어, 일부 사용자 에이전트는 메뉴 항목, 단추 레이블 등을 "회색으로 비활성화"했습니다.
이 예에서는 INPUT 요소가 비활성화되어 있습니다. 따라서 사용자 입력을 수신 할 수 없으며 해당 값을 양식과 함께 제출하지 않습니다.
<INPUT disabled name="fred" value="stone">
노트. disabled 속성의 값을 동적으로 수정하는 유일한 방법은 스크립트를 사용하는 것입니다.
<input type="hidden">
비활성화 된 입력과 이름 / 값이 같은 요소를 추가하십시오 .
그것이 W3C 사양에서 말하는 것이므로 제출되지 않습니다 .
17.13.2 성공적인 통제
성공적인 제어는 제출에 "유효"합니다. [한조각]
- 비활성화 된 컨트롤은 성공할 수 없습니다.
다시 말해, 사양에 따라 비활성화 된 컨트롤은 유효하지 않은 것으로 간주되어 제출해서는 안됩니다.
두 가지, 즉 속성이 있습니다 readonly
및 disabled
반 읽기 전용 입력을 할 수 있습니다. 그러나 그들 사이에는 작은 차이가 있습니다.
<input type="text" readonly />
<input type="text" disabled />
readonly
속성은 입력 텍스트를 비활성화하며 사용자는 더 이상 텍스트를 변경할 수 없습니다.disabled
속성은 입력 텍스트를 비활성화 (변경 불가능 )하게 할뿐만 아니라 제출할 수 없습니다 .jQuery 접근법 (1) :
$("#inputID").prop("readonly", true);
$("#inputID").prop("disabled", true);
jQuery 접근 방식 (2) :
$("#inputID").attr("readonly","readonly");
$("#inputID").attr("disabled", "disabled");
자바 스크립트 접근 :
document.getElementById("inputID").readOnly = true;
document.getElementById("inputID").disabled = true;
PS disabled
이며 readonly
표준 HTML 속성입니다. prop
으로 소개되었습니다 jQuery 1.6
.