html 입력 버튼 비활성화 및 활성화


250

따라서 다음과 같은 버튼이 있습니다.

<input id="Button" type="button" value="+" style="background-color:grey" onclick="Me();"/>

원하는 때 어떻게 비활성화하고 활성화 할 수 있습니까? 시도 disabled="disable"했지만 다시 활성화하는 것이 문제입니다. 다시 false로 설정하려고 시도했지만 활성화하지 않았습니다.


다시 활성화한다는 것은 무슨 뜻입니까? 일단 비활성화하면 동일한 방법으로 다시 활성화 할 수 없습니다 Me()(비활성화되어 있기 때문에)
cjds

2
내가하려는 것은 특정 이벤트가 발생할 때 버튼을 비활성화하고 활성화하는 것입니다.
k.ken December

답변:


461

자바 스크립트 사용

  • html 버튼 비활성화

    document.getElementById("Button").disabled = true;
  • html 버튼 활성화

    document.getElementById("Button").disabled = false;
  • 여기 데모


jQuery 사용

1.6 이전의 모든 버전의 jQuery

  • html 버튼 비활성화

    $('#Button').attr('disabled','disabled');
  • html 버튼 활성화

    $('#Button').removeAttr('disabled');
  • 여기 데모

1.6 이후의 모든 버전의 jQuery

  • html 버튼 비활성화

    $('#Button').prop('disabled', true);
  • html 버튼 활성화

    $('#Button').prop('disabled', false);
  • 여기 데모

PS jquery 1.6.1 변경 사항 에 따라 코드를 업데이트했습니다 . 제안으로 항상 최신 jquery 파일과 prop()메소드를 사용하십시오.


이것이 작동하려면 속성이 필요합니까? like disables = "disable"
k.ken

아니요, 내부에 $(document).ready전화를 걸 수 있습니다 $('#Button').attr('disabled','disabled');. 페이지로드시 버튼이 비활성화됩니다. 특정 이벤트가 발생 $('#Button').removeAttr('disabled');하면 다시 활성화하기 위해 전화 를 걸 수 있습니다 .
palaѕн

비활성화 된 경우 회색 스타일을 추가하는 방법은 무엇입니까?
레이 양

1
이 같은 일부 CSS를 추가 할 수 있습니다 @LeiYang
palaѕн

palash가 올바르게 쓴 것처럼 true와 false는 문자열이 아닌 부울 임에 유의하십시오.
Marco

24

처음에 사용하지 않도록 설정하기 때문에이를 활성화하는 방법은 disabled속성을로 설정하는 것 false입니다.

disabledJavascript에서 속성 을 변경하려면 다음 을 사용하십시오.

var btn = document.getElementById("Button");
btn.disabled = false;

분명히 다시 비활성화하려면 true대신 사용하십시오.

jQuery로 질문에 태그를 지정 했으므로 .prop메소드를 사용할 수 있습니다 . 다음과 같은 것 :

var btn = $("#Button");
btn.prop("disabled", true);   // Or `false`

이것은 최신 버전의 jQuery에 있습니다. 이를 수행하는 오래된 방법은 다음과 같이 속성을 추가하거나 제거하는 것입니다.

var btn = $("#Button");
btn.attr("disabled", "disabled");
// or
btn.removeAttr("disabled");

disabled속성이 존재하기 만하면 요소가 비활성화되므로 해당 값을 "false"로 설정할 수 없습니다. 다음조차도 요소를 비활성화해야합니다.

<input type="button" value="Submit" disabled="" />

당신도 완전히 속성을 제거해야 또는 그것의 속성을 설정합니다.


버튼을 처음에 활성화 한 다음 나중에 비활성화하려면 어떻게해야합니까? 또한 enable = "true"를 시도했습니다. 키워드가 올바른 키워드입니까?
k.ken December

2
@ k.ken 아니요, 키워드가 "사용 중지되었습니다". 처음에 버튼을 활성화하려면 속성 disabled을 전혀 넣지 마십시오 . 그냥 사용하십시오 <input type="button" value="Submit" />. 상태를 변경할 때 .prop("disabled", true);(또는 false)
Ian

10

라이브러리가 필요없는 간단한 JavaScript만으로도이를 쉽게 수행 할 수 있습니다.

버튼 사용

document.getElementById("Button").disabled=false;

버튼 비활성화

 document.getElementById("Button").disabled=true;

외부 라이브러리가 필요하지 않습니다.


4

disable 속성에는 하나의 매개 변수 만 있습니다. 다시 사용하려면 값을 변경하는 것이 아니라 전체를 제거해야합니다.


3
$(".btncancel").button({ disabled: true });

여기에서 'btncancel'은 버튼의 클래스 이름입니다.


0

jQuery를 사용하지 않으면 입력이 더 간단 해집니다.

Button.disabled=1;


0
 <!--Button Disable Script-->
    <script type="text/javascript">
        function DisableButton() {
            document.getElementById("<%=btnSave.ClientID %>").disabled = true;
        }
        window.onbeforeunload = DisableButton;
    </script>
    <!--Button Disable Script-->

-2

이것은 확실히 작동합니다.

버튼을 비활성화하려면

$('#btn_id').button('disable');

버튼을 활성화하려면

$('#btn_id').button('enable');

-6

PHP에 충실 ...

위의 기준이 충족되면 버튼이 표시되도록 허용하지 않는 이유는 무엇입니까?

<?
if (whatever == something) {
    $display = '<input id="Button" type="button" value="+" style="background-color:grey" onclick="Me();"/>';
    return $display;
}
?>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.