2013-12-23 2 views
0

페이지가로드 된 후 10 초 후에 버튼을 표시하려면 아래 스 니펫을 사용하고 있습니다. 클릭하면 액션이 성공적으로 발생하고 버튼이 다시 10 초 동안 사라져 다시 표시됩니다. 내가 할 수 있기를 원하는 것은 버튼을 숨기는 것보다 버튼을 비활성화하는 것입니다 (그렇지 않은 경우에는 디자인이 조금씩 달라집니다). 나는 JS/JQuery에 약하며 약간의 지침을 고맙게 생각한다.이 JS를 숨기지 않고 버튼을 사용 중지하도록 변경하십시오.

 <a class="btn blue" id="manualReload" onclick="reloadResponses();"> 
      <i class="icon-refresh"></i>&nbsp;&nbsp;&nbsp;Reload Comments 
     </a> 

     function reloadResponses() { 

      $('#responses').load('loadComments.php?id=<?php echo $id;?>'); 

      manualReload.style.display ='none'; 

      setTimeout (function(){ 
       manualReload.style.display ='inline'; 
      }, 10000); 
     } 

나는 간단 확신하고 응답자들은 예를 들어 내가 오늘 밤 :)

친절 감사합니다,

답변

0

에 의해 비활성화 할 수 있습니다 0
$("#manualReload").prop("disabled",true); 

귀하의 경우 수동로드는 버튼이 아닙니다. 그것의 앵커 태그 그래서 당신은 몇 가지 트릭을해야합니다.

유 앵커 태그를 사용하지 않을 때 스타일

a.disabled { color:#ddd; } 

를 추가하려면 reloadResponses에서 다음이

$('#manualReload').addClass('disabled'); 

을 추가

if ($('#manualReload').hasClass('disabled')) return; 

10 이후 처음으로 검사를 실행 기능 초 앵커 태그를 사용하도록 클래스를 제거하는 것을 잊지 마십시오

$('#manualReload').removeClass('disabled'); 
+0

감사합니다 Vibin, 완벽하게 이해합니다. – Arbiter

0

시도 마이클 뭔가를 배울 어떻게 작동하는지 설명 간단히 상관 없어 경우 이 : JQuery와 버튼에

manualReload.disabled = true; 
+0

나를 위해 작동하지 않습니다 (이미 시도했지만). 제안에 감사드립니다. 버튼이 아닌 하이퍼 링크이기 때문에 가능한가? 아니면 상관 없습니까? – Arbiter

+1

비활성화는 입력 유형 요소에 대해서만 작동하므로 앵커 요소에서 작동하지 않습니다. – Dennis

+0

@Dennis에게 감사 드리며, 우리는 LinuxOS를 배웠습니다. ') – Arbiter

관련 문제