2016-11-18 45 views
0

我和另一位程序員正在編寫Web聊天應用程序。之前,他編寫了僅供應用使用的聊天程序,並且由於一些錯誤(如果發現並公開發布的話)可能會破壞系統,從而私下使用。所述系統的用戶是值得信任的,如果他們發現錯誤,不會利用它們並使其服務器停機。我請求他編寫可以實現到PHP中的代碼,並告訴他我會爲它編寫前端代碼。Jquery根據.load請求的輸出禁用或啓用操作按鈕

但是,我遇到了關於jquery的一個問題。當然,我們可以運行網站純html/css/php,並有不斷的頁面重新加載......或者,我們可以混合使用jquery到等式中,並使用戶更容易。

TL; DR:我正在用jquery寫一個聊天應用程序,如果聊天加載程序拒絕這個聊天功能,這個功能不起作用。

setInterval(function(){ 
    $('#reload').load('/file.php?server=serverfur'); 
    if($('#reload').html() == "Login to view server logs"){ 
     if($(".login-button").prop('disabled')){ 
     $(".login-button").prop('disabled', 'false'); 
     $(".logout-button").prop("disabled", 'true'); 
     } 
    }else{ 
     if($(".login-button").prop('disabled')){ 
     $(".login-button").prop('disabled', 'false'); 
     $(".logout-button").prop("disabled", 'true'); 
     } 
    } 
    }, 1000); 

回答

1

​​是異步的,所以你在結束之前檢查結果。您需要將該代碼放入回調函數中。

setInterval(function(){ 
    $('#reload').load('/file.php?server=serverfur', function() { 
     if($('#reload').html() == "Login to view server logs"){ 
      if($(".login-button").prop('disabled')){ 
      $(".login-button").prop('disabled', false); 
      $(".logout-button").prop("disabled", true); 
      } 
     }else{ 
      if($(".login-button").prop('disabled')){ 
      $(".login-button").prop('disabled', false); 
      $(".logout-button").prop("disabled", true); 
      } 
     } 
    }); 
    }, 1000); 

此外,啓用/禁用的按鈕時,disabled屬性應該設置爲一個布爾值,而不是字符串。

+0

不是直接的答案。還有其他的錯誤,包括.logout-button沒有被定義和else {if($(「。login-button」)。prop('disabled')){'與第一個if語句的條件相同。但你的回答幫助我解決了這個問題。 –