> Merhaba Sedat ,
> firebug ile console'dan $("a[rel='sexylightbox']") ile kaç tane eleman
> dönüyor kontrol edebilir misin?
> kiirpi
> www.ugurokumus.net
> 2009/11/7 Sedat Kumcu <se...@pusulaweb.com>
> Merhaba,
>> *jQuery Datatables* <http://www.datatables.net> kullanmaya başladım.
>> Gayet güzel ve sorunsuz çalışıyor çok hoşuma gitti.
>> Ayrıca eğitim sistemimizdeki bazı içerikleri göstermek içinde *Sexy
>> Lightbox* <http://www.coders.me/ejemplos/sexy-lightbox-2/> eklentisini
>> kullanıyorum. Bu da çok güzel ve sorunsuz çalışıyor.
>> Bilmeyenler için hızlıca yazayım Sexylightbox'u sayfada yüklemek için link
>> takılarının rel="" değerine *sexylightbox *değerini vermeniz yeterli.
>> <a rel="sexylightbox">..</a> gibi.
>> Açıklama kısmım biraz uzun olacak ama yardımcı olabilecek kişilere
>> sağlıklı şekilde anlatmak istedim.
>> Sorunum şu ki, Datatables eklentisi içerisindeki satırlarda Önizleme
>> linkine tıklandığında Sexylightbox ile ilgili içeriği göstermek istiyorum.
>> Bu işlemi *normal tabloya* dökülmüş listelerde sorunsuz yapıyorum.
>> Datatables ile verileri json formatında bir ajax isteği ile alıyorum.
>> aşağdıaki gibi.
>> var arrAjaxSrc = new Array("Inc.Json.Tablo.asp?SINAV=5");
>> $.fn.fnCreateDataTable = function(rDom, rUrl){
>> $(rDom).dataTable({
>> "sAjaxSource": rUrl
>> });
>> };
>> $.fn.fnCreateDataTable($("#dTblSorular"),arrAjaxSrc[0]);
>> Hemen açıklayım fnCreateDataTable fonksiyonu sayfada birden fazla tablomu
>> datatables ile init yapmak için hazırladığım kendi fonksiyonum. Verilerin
>> gelmesinde ve json formatında bir problem yok söylemek isterim. Yani sorunum
>> sadece Lightbox'u init ettirmekte.
>> *Tablo yapım şu şekilde,*
>> <table id="dTblSorular">
>> <thead>
>> <tr>
>> <th>Sıra</th>
>> <th>SoruID</th>
>> <th>Önizleme</th>
>> </tr>
>> </thead>
>> <tbody>
>> </tbody>
>> </table>
>> Datatables eklentisi init edildiği zaman tablodaki <tbody></tbody> takısı
>> içerisine gelen json verisini satır olarak işliyor.
>> *Satırlarım ise şu şekilde.*
>> <tr>
>> <td>12</td>
>> <td>419</td>
>> <td><a
>> href="Soru.Onizleme.asp?SORUID=419&height=350&width=450" *
>> rel="sexylightbox"*>Önizleme</a></td>
>> </tr>
>> *Sistemin işleyişi bu şekilde. Şimdi geleyim sorunu anlatmaya.*
>> Json veriyle işlenen tablo satırlarındaki Önzleme linkine tıkladığım zaman
>> Sexylightbox anlık olarak init edilmediği için bağlantılardaki
>> rel="sexylightbox" tanımını almıyor sanırım ve Sexylightbox açılmıyor.
>> Onun yerine linki verdiğim sayfa çıkıyor.
>> *Datatables *eklentisinin sayfasında *Callbacks*<http://www.datatables.net/usage/callbacks>başlığı altında
>> *fnRowCallback* fonksiyonu ile de Sexylightbox'u init ettirmeye çalıştım
>> ama olmadı.
>> Aşağıdaki gibi yani,
>> var arrAjaxSrc = new Array("Inc.Json.Tablo.asp?SINAV=5");
>> $.fn.fnCreateDataTable = function(rDom, rUrl){
>> $(rDom).dataTable({
>> "fnRowCallback": function(nRow, aData, iDisplayIndex){
>> //alert('Satır işleniyor');
>> *SexyLightbox.initialize*({
>> imagesdir:
>> 'Includes/jQuery/sexy-lightbox-2.2/jQuery/sexyimages',
>> color: 'black'
>> });
>> return nRow;
>> },
>> "sAjaxSource": rUrl
>> });
>> };
>> $.fn.fnCreateDataTable($("#dTblSorular"),arrAjaxSrc[0]);
>> Bu şekilde sayfada kullandığımda Datatables bir sorun çıkmadan çalışıyor
>> ama Sexylightbox çalışmıyor.
>> *Bir hatırlatma da yapayım:*
>> Daha önce jQuery'nin *load *fonksiyonu ile getirdiğim bir ajax içerini
>> div içerisine yazdırmıştım. O ajax içeriğinde de sexylightbox linkleri
>> vardı. load fonksiyonun *callback*'ine aşağıdaki gibi Sexylightbox init
>> kodlarını ekleyince gelen ajax içerikteki linklere tıklanınca SexyLightbox
>> düzgün şekilde çalışmıştı. Şimdi neden olmuyor anlamadım.
>> $("#BtnGetir").click(function(){
>> $("#divSonuc").load("sinav.sonuc.asp", {SINAV: 5}, *function(){*
>> SexyLightbox.initialize({
>> imagesdir:
>> 'Includes/jQuery/sexy-lightbox-2.2/jQuery/sexyimages',
>> color: 'black'
>> });
>> *}*);
>> });
>> *Değerli vaktini ayırıpda yapacağınız yardımlarınız için şimdiden
>> minnetarım. *
>> *Herkese iyi çalışmalar.*
>> Sedat Kumcu
>> Pusulaweb Interaktif Hizmetler