2013-04-08 21 views
11

Kullanıcı masamı göstermek için şu kodu takip etmeliyim, bu JTable ile başarıldı.jQuery-JTable: Satır için tıklama etkinliğini ekle?

<script type="text/javascript"> 
    $(document).ready(function() {    
     $('#userTableContainer').jtable({ 
      title: 'Users', 
      selecting: false, 
      paging: true, 
      pageSize: 15, 
      sorting: true, 
      addRecordButton: false, 
      saveUserPreferences: false, 
      create: false, 
      edit: false, 
      actions: { 
       listAction: 'user/getUsers.htm', 
      }, 
      fields: { 
       username: { 
        title: 'username' 
       }, 
       firstname: { 
        title: 'firstname' 
       }, 
       lastname: { 
        title: 'lastname' 
       }, 
       company: { 
        title: 'company' 
       } 
      } 
     }); 
     $('#userTableContainer').jtable('load');    
    });  

</script> 

<div id="content"> 
    <h1>Users</h1>  

    <br /> 
    <div id="userTableContainer"> 

    </div> 
</div> 

her satır için özel bir eylem olay eklemek mümkün mü? Denetleyicime "user/showUser.htm" gibi bir istek gönderebilmem için.

+0

arka arkaya için bir düğme veya bir şey eklemek demek? Tıklamada kullanıcı ayrıntılarını içeren bir açılır pencere açılsın mı? –

+0

, kullanıcı ayrıntılarını veya bunun gibi herhangi bir şeyi açacak olan satıra bir eylem. Hatta bir pop-up olmak zorunda değil, aynı zamanda sadece yeni bir sayfa olabilir, gerçekten önemli değil –

cevap

12

Bu yolda size almalısınız:

$('#userTableContainer').jtable({ 
    .... 
    recordsLoaded: function(event, data) { 
     $('.jtable-data-row').click(function() { 
      var row_id = $(this).attr('data-record-key'); 
      alert('clicked row with id '+row_id); 
     }); 
    } 
}); 
+0

TEŞEKKÜR EDERİZ !!! Bu, charm =) –

+0

gibi çalışır. Belirli bir satırdaki tüm hücre değerlerine nasıl erişileceğini söyler misiniz. Yukarıdaki kod sadece anahtar olan sütunun değerini sağlar. –

+2

@ user1334573 jtable ile çalıştığımdan bu yana çok uzun zaman geçti. 'recordsLoaded' işlevindeki' console.log (data) 'işlevini çağırmayı deneyin ve hangi verilerin kullanılabilir olduğuna göz atın. Tüm veri kayıtlarının 'data' nesnesinde bulunacağını biliyorum. Ayrıca 'getRowByKey()' işlevi de kullanışlı olabilir .. http://www.jtable.org/apireference#met-getRowByKey –

İlgili konular