2013-07-04 231 views
1

我放棄了,因爲我在過去的4個小時裏一直在搞這個,而我只是沒有到達任何地方。當使用這裏找到的jQuery數據表。 http://datatables.net/examples/api/editable.html(看起來像是一個非常流行的插件)除了可編輯的單元格部分外,我可以獲得幾乎所有我想要工作的內容。我有我的文件在這個順序jquery dataTable可編輯單元格

<script src="JS/jquery.js"></script> 
<script src="JS/jquery.dataTables.min.js" type="text/javascript"></script> 
<script src="JS/jquery.jeditable.js"></script> 
<script src="JS/jquery.validate.js"></script> 
<script src="JS/ColReorder.min.js"></script> 
<link href="JS/css/jquery.dataTables.css" rel="stylesheet" /> 

然後我有這個腳本得到表初始化。

function formattable(thistable) { 
     //alert(thistable + " from format table") 
     // $(document).ready(function() { 
      // ADPControlProcessor_Table1 
     //$("#ADPControlProcessor_GridView1").dataTable(); 

     var oTable = $("#ADPControlProcessor_GridView1").dataTable({ 
       //"bFilter": true, 
       "sScrollY": "200px", 
       "bPaginate": false, 
       "bAutoWidth": false, 
       "sDom": 'Rlfrtip' 



      //}); 
      //alert("running"); 
     }); 

     //var oTable = $('#example').dataTable(); 

     /* Apply the jEditable handlers to the table */ 
     $('td', oTable.fnGetNodes()).editable('../examples_support/editable_ajax.php', { 
      "callback": function (sValue, y) { 
       var aPos = oTable.fnGetPosition(this); 
       oTable.fnUpdate(sValue, aPos[0], aPos[1]); 
      }, 
      "submitdata": function (value, settings) { 
       return { 
        "row_id": this.parentNode.getAttribute('id'), 
        "column": oTable.fnGetPosition(this)[2] 
       }; 
      }, 
      "height": "14px" 
     }); 

我不知道該選什麼試試。任何人都可以將我指向正確的方向。

+0

我更新瞭解決方案後。 – Miguel

+0

嗨米格爾,你應該發佈你的解決方案作爲答案,而不是你的問題的更新。 –

回答

4

你是不是正確的初始化嘗試這一個

$(document).ready(function() { 
     /* Init DataTables */ 
     var oTable = $('#example').dataTable(); 

     /* Apply the jEditable handlers to the table */ 
     $('td', oTable.fnGetNodes()).editable('../examples_support/editable_ajax.php', { 
      "callback": function(sValue, y) { 
       var aPos = oTable.fnGetPosition(this); 
       oTable.fnUpdate(sValue, aPos[0], aPos[1]); 
      }, 
      "submitdata": function (value, settings) { 
       return { 
        "row_id": this.parentNode.getAttribute('id'), 
        "column": oTable.fnGetPosition(this)[2] 
       }; 
      }, 
      "height": "14px" 
     }); 
    }); 

這裏就是活生生的例子click here

+0

感謝您的響應,但現在我得到一個錯誤oTable.fnGetNodes是不是一個函數? – Miguel

+0

你確定你包含這兩個文件1. jquery.dataTables.js和jquery.jeditable.js –

+0

謝謝你的問題不是包含文件,而是試圖初始化表2兩次。 – Miguel

6

而是可編輯插件,我建立了我自己的,您可以自由使用支付。回購協議是在這裏:DataTables CellEdit Plugin

基本的初始化是快速和容易:

oTable.MakeCellsEditable({ 
    "onUpdate": myCallbackFunction 
}); 

myCallbackFunction = function (updatedCell, updatedRow) { 
    console.log("The new value for the cell is: " + updatedCell.data()); 
} 
+0

如何在回調方法中獲得列標題名稱?使用updateCell.data()我可以獲取數據,但不知道如何獲取列名稱(編輯哪個字段)? –

相關問題