【问题标题】:Jquery Datatables class not being recognised by jquery in codeigniterjQuery Datatables 类在 codeigniter 中未被 jquery 识别
【发布时间】:2014-05-11 10:25:05
【问题描述】:

您好 frds,我正在尝试访问我为 jquery 数据表中的图像提供的类,但浏览器端没有响应。

控制器:

function load_image(){

    $this->datatables
        ->select('image')
        ->from('details')
        ->add_column('preview', '<img class="preview" width="100" height="100" src ="assets/Data/adv_images/$1">', 'image');

    echo $this->datatables->generate();
}

使用此控制器,我可以将图像加载到数据表中。以下代码正在浏览器上加载数据表。当我单击图像时,屏幕上没有警报对话框。使用网络控制台,我可以看到图像类预览。为什么我无法在点击时获得警报框。

$(document).ready(function() {   

          $('#example').dataTable
          ({
            'bProcessing'    : true,
            'bServerSide'    : true,
            'sAjaxSource'    : '<?php echo base_url();?>load_image',
            'iDisplayStart'  : 0,
            'fnServerData': function(sSource, aoData, fnCallback , oSettings)
            {     
              $.ajax
              ({
                'dataType': 'json',
                'type'    : 'POST',
                'url'     : sSource,
                'data'    : aoData,
                'success' : fnCallback,
                'cache'   : false
              });
            }
          });

        $('.preview').click(function(){
                        alert('hi');
                        })
        });

【问题讨论】:

  • 您能否尝试将 .click(function) 放在代码中的 .dataTable() 之前。

标签: jquery ajax codeigniter datatables


【解决方案1】:

您在加载预览图像的数据表之前设置了click 事件处理程序。

改用这个:

$('#example').on('click', '.preview', function() {
    alert('hi');
});

详情请参阅documentation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-09
    相关资源
    最近更新 更多