2011-02-27 12 views
5

Veritabanından tüm verileri görüntülemek için bir DataTable (jQuery) eklentisi kullandığım bir PHP sayfası yaşıyorum.jQuery DataTable - Yeni satır çalışmaları ekleyin, ancak düzenlenebilir hale getirilemiyor (jeditable)

Burada Kullanıcıya yeni satır ekleme seçeneği, yani kullanıcının veri girmesi için yeni bir kayıt vermek istiyorum. Ben örnek izledi:

http://www.datatables.net/examples/api/add_row.html

ve yeni bir satır oluşturmak başardı.

Ancak, oluşturulan varlık için "id" özelliğini nasıl ekleyeceğime tamamen emin değilim ve ayrıca nasıl düzenlenebilir hale getirileceğinden emin değilim.

Şu an itibariyle diğer tüm alanlar, jeditable kullanılarak düzenlenebilir.

  $(document).ready(function() { 
      /* Init DataTables */ 
      var oTable = $('#example').dataTable({ 
      "iDisplayLength": 5, 
      //"bRetrieve": true, 
      "aLengthMenu": [[5, 10, 15, -1], [5, 10, 15, "All"]] 
      } 
      ); 


      /* Apply the jEditable handlers to the table */ 
      $('td', oTable.fnGetNodes()).editable('expenseFieldsUpdater.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], 
         "form_id": document.getElementById('formID').value 
        }; 
       }, 
       "height": "14px" 
      }); 
     }); 

     var giCount = 1; 
     function fnClickAddRow() { 
      $('#example').dataTable().fnAddData([ 
       ".1", 
       giCount+".2", 
       giCount+".3", 
       giCount+".4", 
       giCount+".5" ]); 
        giCount++; 
     } 

Ama sonra, tamamen düzenlenebilir yapma konusunda gitmek nasıl emin değilim şu şekildedir:
kodudur. Herhangi bir işaretçi çok yardımcı olabilir.

Ben datatables sitesinde aşağıdaki yazı bulundu, ancak bunları yapma konusunda gitmek nasıl anlamak mümkün değildi çalışır:
http://datatables.net/forums/comments.php?DiscussionID=181

cevap

1

Genellikle, satırları ekledikten veya düzenledikten sonra tablo satırlarını süsleyen $ (document) .ready olaylarını yeniden çalıştırmam gerektiğini buluyorum. Yani muhtemelen çağrıyı dışarı yeniden düzenlemelisiniz:

$('td', oTable.fnGetNodes()).editable() 

ayrı yöntem haline Eğer $ (document) den çağırabilir .ready ve fnClickAddRow dan().

İlgili konular