민서네집

[jquery] 버튼, a태그(하이퍼링크) disable 시키기 본문

WEB (HTML, CSS)

[jquery] 버튼, a태그(하이퍼링크) disable 시키기

브라이언7 2013. 12. 27. 00:23

Button 을 disable 시켜서 click 해도 실행되게 하고 싶지 않을 때가 있다.


$("#buttonId").prop("disabled", true);

and


$("#buttonId").prop("disabled", false);


[참고] http://stackoverflow.com/questions/8707423/jquery-to-disable-button-not-work


그런데 이렇게 해도 button 이 disable 안되고 계속 click 이 되는 것이다.

그런데 실은 HTML 로 보면 button 이 아니라 <a> 태그였다.

css 로 버튼처럼 보이게 한 것이다.


<!-- button --> <br /> <div class="ab ableft"> <a href="javascript:fnListUser()" class="bt01"><span>목록</span></a> </div> <div class="ab abright"> <a href="javascript:fnDeleteUser();" id="btnDeleteUser" class="bt01"><span>삭제</span></a> <a href="javascript:fnModifyUser();" id="btnModifyUser" class="bt01"><span>수정</span></a> </div>


< css 파일의 내용 >

/* button */

.bt01 {display:inline-block; height:25px; padding-left:5px; text-align:center; background:url("../image/bg_bt01.gif") no-repeat; font-size:13px;}

.bt01 span, .bt01 button {position:relative; display:inline-block; min-width:40px; _width:40px; height:25px; padding-right:5px; line-height:25px; background:url("../image/bg_bt01.gif") no-repeat right top; white-space:nowrap; cursor:pointer;}


<a>태그 즉 hyperlink 를 disable 시키기 위해서는?


You can bind a click handler that returns false:

$('.my-link').click(function () {return false;});

To re-enable it again, unbind the handler:

$('.my-link').unbind('click');

Note that disabled doesn't work because it is designed for form inputs only.


jQuery has anticipated this already, providing a shortcut as of jQuery 1.4.3:

$('.my-link').bind('click', false);

And to unbind / re-enable:

$('.my-link').unbind('click', false);


[출처] 

disable a hyperlink using jQuery

http://stackoverflow.com/questions/5085584/disable-a-hyperlink-using-jquery

Comments