2014-01-17 50 views
0

我使用的JTable(jtable.org),現在我加2個自定義按鈕上的每一行,我需要更新MySQL中該行的價值。按鈕是設置批准或拒絕該行,onclick。所以我有一個綠色的按鈕和一個紅色的按鈕。Jtable.org自定義按鈕,更新字段在MySQL中,的onclick

當特定用戶點擊「鏈接」,它必須更新「審批」領域內的MySQL重視「是」,如果點擊「紅色按鈕」,將其設置爲「無」。

到目前爲止,我的代碼看起來是這樣的:

$(document).ready(function() { 
    //Prepare jTable 
    $('#pretencao_ferias').jtable({ 
     title: 'Pretenção de Férias/Licença Prêmio', 
     paging: true, 
     pageSize: 20, 
     sorting: true, 
     defaultSorting: 'data_inicio ASC, nome ASC', 
     //editinline:{enable:true}, 
     selecting: false, //Enable selecting 
     //multiselect: true, //Allow multiple selecting 
     //selectingCheckboxes: true, //Show checkboxes on first column 

     actions: { 
      listAction: 'Acao.php?action=list', 
      createAction: 'Acao.php?action=create', 
      updateAction: 'Acao.php?action=update', 
      deleteAction: 'Acao.php?action=delete' 
     }, 

     customButtons: { 
      items: [ 
       { 
        icon: 'images/green_16x16.png', // used ../default-16x16.png by default 
        text: 'Aprovar', 
        click: function(record) { 
         alert(record); 
        }, 
        position: 'left' // right by default 
       }, 

       { 
        icon: 'images/red_16x16.png', // used ../default-16x16.png by default 
        text: 'Negar', 
        click: function(record) { 
         alert(record); 
        }, 
        position: 'left' // right by default 
       } 
      ] 
     }, 
     toolbar:{    
      items: [{ 
       icon: 'images/pdf.jpg', 
       text: 'Criar PDF', 
       click: function() { 
        window.open('cria_pdf.php'); 
       } 
      }]}, 
      fields: { 
       id: { 
        key: true, 
        create: false, 
        edit: false, 
        list: false 
       }, 
       ... 

我不知道的JavaScript不足以創建一個函數來「點擊」。而且它是我需要你的幫助與特定領域吼叫:

customButtons: { 
    items: [ 
     { 
      icon: 'images/green_16x16.png', // used ../default-16x16.png by default 
      text: 'Aprovar', 
      click: function(record) { 
       alert(record); 
      }, 
      position: 'left' // right by default 
     }, 

     { 
      icon: 'images/red_16x16.png', // used ../default-16x16.png by default 
      text: 'Negar', 
      click: function(record) { 
       alert(record); 
      }, 
      position: 'left' // right by default 
     } 
    ] 
}, 

凡「aproved」的值必須是

<CENTER><img src="images/redondo_verde.png" alt="Aguardando Aprovação"></CENTER> 

而拒絕

<CENTER><img src="images/redondo_vermelho.png" alt="Aguardando Aprovação"></CENTER> 

回答

0

裏面你點擊功能你需要做一些事情。

  1. 做一個ajax調用動作網頁更新數據庫。 召喚就會看起來像的網址:

    「?Acao.php行動=批准& ID =」 + record.whatever_your_unique_id_is

    「Acao.php行動=否認& ID =?」 +紀錄。 whatever_your_unique_id_is

  2. 在你的Acao.php頁面中,你需要爲「批准」和「拒絕」編寫處理程序。 這將類似於「更新」行動,除了他們只會在數據庫中更新的批准或拒絕列。

  3. AJAX調用你的決定將有一個「成功」的回調,你會用它來修改,使它們顯示批准或拒絕的圖標圖像。

  4. 最後,你需要確保你把正確的圖象中的圖標記錄被加載時,使得已經批准或拒絕那些反映在頁面加載時。

    $阿賈克斯({ 網址: 'recurring_cost_action.php', 類型: 「GET」, 錯誤:函數(){ 警報 ( '!出現錯誤,請重試'); }, 數據:{
    行動: 「批准」,ID:record.main_id }, 成功:功能(數據) { //這是你想要做的步驟3 } });

+0

我計上心來。謝謝。但是,我在JavaScript中analphabet,我不知道該怎麼辦了第一和第三步驟。 步驟2中,我明白了,我會不喜歡 的東西,如果($ _ GET [ 「行動」] == 「批准」){...} – Leibovich

+0

我添加了一個簡單的Ajax例子。對於格式化抱歉,由於某些原因,代碼格式不起作用。如果你進入我的答案編輯代碼更具可讀性。 –

+0

click:$ .ajax({url:'recurring_cost_action.php', type:「GET」, error:function(){alert('發生錯誤!請重試。');}, data: { action:「approve」,id:record.main_id}, success:function(data){//這是你想要做的第3步}}); }, This ??? – Leibovich

相關問題