2012-05-29 13 views
9
tıklanabilir tarihlenebilecek bir wicket tüm satırı
+0

Bunun için kendi "PropertyColumn" uygulamanızın kullanılmasından daha kolay bir çözüm olduğunu düşünmüyorum. DataTable sınıfında "newRowItem" ve "DataGridView" içinde geçersiz kılınan "newRowItem" yöntemine bakabilirsiniz. – rotsch

cevap

19

Bu işi yapar.

//override this method of the DataTable class 
@Override 
protected Item<T> newRowItem(String id, int index, final IModel<T> model) { 

    Item<T> rowItem = new Item<T>(id, index, model); 
    rowItem.add(new AjaxEventBehavior("onclick") { 

     private static final long serialVersionUID = 6720512493017210281L; 

     @Override 
     protected void onEvent(AjaxRequestTarget target) { 
     //callback or do some stuff 
     } 

    }); 
    return rowItem; 

} 
+0

Çok yardımcı yanıt. Ek olarak, bu yöntemi geçersiz kılmak, her satırın işaretleme kimliğini ayarlamamı sağlar, bu da benim durumumda çok yararlıdır, çünkü yeni eklenen satırı DataTable'ı yenilemeyi tetiklemek için bir jQuery olayı tetiklemeliyim. –

+0

OnEvent yönteminde hangi nesnenin tıklandığını nereden biliyorsunuz? – DavidVdd

+0

modele göre, dahili olarak wicket, satırlar ve nesneler arasındaki ilişkinin bir izine sahiptir – osdamv

İlgili konular