비활성화 된 입력 필드의 값 제출


답변:


238

양식에서 입력 필드를 비활성화하고 싶습니다. 양식을 제출할 때 비활성화 된 양식 의 값 이 제출되지 않습니다 .

사용 사례 : Google지도에서 Lat Lng를 가져 오려고하는데 표시하고 싶지만 사용자가 수정하는 것을 원하지 않습니다 .

readonly입력 필드에서 속성을 사용할 수 있습니다.

<input type="text" readonly="readonly" />

2
입력은 여전히 ​​포커스를받을 수 있습니다. 참조 : stackoverflow.com/questions/5443952/...
라파엘 올리베이라

5
8 년 후 좋은 대답. 텍스트를 편집 할 수없는 것처럼 보이도록 추가하고 싶었습니다. CSS를 추가합니다.input:read-only { color:grey; }
UltrasoundJelly

21

나는 이것이 오래되었다는 것을 알고 있지만 방금이 문제에 부딪 쳤고 어떤 대답도 적합하지 않습니다. nickf의 솔루션은 작동하지만 자바 스크립트가 필요합니다. 가장 좋은 방법은 필드를 비활성화하고 값을 전달하는 것입니다. 숨겨진 입력 필드를 사용하여 값을 양식에 전달하는 것입니다. 예를 들면

<input type="text" value="22.2222" disabled="disabled" />
<input type="hidden" name="lat" value="22.2222" />

이렇게하면 값이 전달되지만 사용자는 회색으로 표시된 필드를 볼 수 있습니다. readonly 속성은 회색으로 표시되지 않습니다.


1
비활성화 된 텍스트 상자에 CSS를 추가하여 회색으로 표시 할 수 있습니다.
krillgar

value비활성화 입력에 필요한?
Ömer An

10

Readonly 속성을 사용할 수도 있습니다. 입력은 회색으로 표시되지 않지만 편집 할 수 없습니다.

<input type="text" name="lat" value="22.2222" readonly="readonly" />

2

입력 요소에는라는 속성이 disabled있습니다. 양식이 제출되면 다음과 같은 코드를 실행하십시오.

var myInput = document.getElementById('myInput');
myInput.disabled = true;

5
원래 질문을 처리 할 때 양식 제출 중에 값을 전달하려면 "disabled"속성이 "true"대신 "false"여야합니다.
Daniel Vukasovich
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.