2013-07-23 27 views
0

場景 我有一個頁面,用戶可以激活或停用服務。我有一個說明服務當前狀態的按鈕。我通過php獲取服務狀態並在按鈕文本的位置呼應activeinactive來實現此目的。
問題我想要一個AJAX來監聽點擊按鈕。當用戶點擊active按鈕時,AJAX應該調用一個URL來觸發用戶服務狀態更改的更改並返回用戶的當前狀態。如果回覆是200inactive,如果php的回覆爲101,我想將按鈕中的文本更改爲activeAJAX - 根據PHP腳本的回覆更改內容

我想要的結果的IF-ELSEIF-ELSE樣式聲明比較喜歡

if(reply=='200') 
     code-to-change-the-text-to-active; 
    elseif(reply=='101') 
     code-to-change-the-text-to-in; 
    else 
     alert(some-error); 

我做了幾個搜索,只找到如何改變從答覆的文本。但是,我想要一個方法來獲取答覆作爲變量,並用它來切換我的文本。

+0

只需從您通過AJAX調用的PHP頁面返回JSON即可。要做到這一點,請閱讀這裏http://www.islandsmooth.com/2010/04/send-and-receive-json-data-using-ajax-jquery-and-php/ – user1477388

回答

1

您需要將您的回覆從PHP以JSON形式發送到JavaScript(使用json_encode($ reply)),然後,您的AJAX成功回調函數將以它可以使用的格式接收狀態值。

1

使用與您的實際數據下面的代碼格式:

HTML

<input type="button" value="active" id="active"> 

JS

$('#active').click(function() { 
     var status = $(this).attr('value'); // get the value of your button state 
     var r = confirm("Are You Sure Change Status?"); 
     if (r==true){ 
      $.ajax({ 
      type: "POST", 
      url: "YOUR URL", 
      data:"{userstatus:status}", 
      beforeSend : function() { 

      }, 
      success:function(result){ 
       //Do whatever you want with result// 
      } 
      }); 
     }else{ 
      return false; 
     } 
    }); 

注:當你點擊激活按鈕,其呼叫AJAX功能把你的實際URL文件名稱在URL參數中。然後在那裏運行sql查詢,您將得到成功的響應。

+0

對不起,如果我要求舀勺,但我對AJAX/JS毫無頭緒。你能否提供這個html,以便我可以與元素相關並學習整個事情。 – VenomVipes

0

快捷方式/快速。

JS

函數updateStatus(){

$.get('yourPHPCode/getStatus', function(data)){ 
    $('#status').val(data); 
} 

}

PHP

的getStatus函數(){ ... 回聲$狀態; }