2013-02-20 133 views
0

我有一个datatatble和一列是可编辑的。我正在寻找3个问题的解决方案。任何人都可以提供帮助。数据表服务器端处理

  1. 我需要在第一列传递到我的服务器端脚本(即数据库的主键)
  2. 我需要做只有一个单元格为永恒不变的(元素FIRSTROW,第一列)
  3. 编辑表格后,我需要在列中看到编辑的值。我知道如果我们使用sUpdateURL:函数(值,设置)将显示更改。谁可以帮我这个事。我对数据库非常陌生。

这里是我的代码使用python +烧瓶框架服务器端处理

$(document).ready(function() { 
     $('#jtable').html('<table cellpadding="1" cellspacing="1" border="1" class="pretty" id="edit_table"></table>'); 
     $("#edit_table").dataTable({ 
      "aaData": {{ result | safe }}, 
      "aLengthMenu" : 100, 
      "aaSorting": [], 
      "aoColumns" : [ 
       {'sTitle' : 'Options' }, 
       {'sTitle' : 'Values'} 
      ], 
      "iDisplayLength": -1, 
      "bFilter" : false, 
      "bSearchable" :false, 
      "bInfinite" :true, 
      "bSort" :false, 
      "bPaginate": false 
     }); 
    }); 
    $(document).ready(function(){ 
     $("#edit_table").dataTable().makeEditable({ 
      sUpdateURL: "/submitchanges", 
      "aoColumns": [ 
       null, 
       { 
       }, 
       { 
        indicator: 'Saving platforms...', 
        tooltip: 'Click to edit platforms', 
        type: 'textarea', 
        submit:'Save changes', 
        fnOnCellUpdated: function(sStatus, sValue, settings){ 

        } 
       } 
      ] 
     }); 
    }); 

上午。

回答

0

这里服务器代码与您的客户端工程(略作修改,见下文):

from flask import Flask, render_template, request as flask_request 
app = Flask(__name__) 

@app.route('/') 
def hello_world(): 
    aa_data = [['First', 'Second'], ['First', 'Second']] 
    return render_template('index.html', result = aa_data) 

@app.route('/update/', methods=['POST']) 
def update_records(): 
    value = flask_request.form['value'] 
    row_id = flask_request.form['rowId'] 
    # todo: perform database update operation 
    return value 

if __name__ == '__main__': 
    app.run(debug=True) 

客户端修改:

$("#edit_table").dataTable().makeEditable({ 
      sUpdateURL: "/update/", 
      "aoColumns": [ 
       null, 
       { 
        sName:"secondColumn" 
       } 
      ] 
     });