2012-01-28 13 views
0

フォームを使用せずにデータベースを更新するために編集可能なテーブルを使用しようとしています。私の <td>タグはcontenteditable属性を持っているので、テーブルセルを編集することができます。私の問題は、Codeigniterを使用しており、テーブルセルデータをコントローラに送信してデータベースを更新する方法がわからないことです。前に誰かが同じ問題に遭遇したのかどうか疑問に思っています。テーブルセルからデータベースにデータを送信

答えて

1

(遅延した)keyupイベントをリッスンし、jQuery.text()を取得するだけです。テキスト文字列をキャプチャすると、ajax、violaを介してcsrf_tokenでcodeigniterコントローラに送信します。

これは(jQueryの)正常に動作する必要がありますが、心のテストされていないアイブ

$(function(){ 

     var tbl = $("table"), 
      tblTd = tbl.find("td"), 
      timeout = ''; 

     tblTd.bind('keyup', function(){ 

       var td = $(this); 

       if(timeout) { 
        clearTimeout(timeout); 
        timeout = null; 
       } 

       timeout = setTimeout(function() { 

        var txt = td.text(); 
            td.attr('disabled', 'disabled'); 
        console.log(txt); 
        console.log(typeof txt); 

            //validation then do ajax 

       }, 1000); 

     }); 
関連する問題