代码之家  ›  专栏  ›  技术社区  ›  Deesha

使用JSON dict填充数据表时,jquery中未检测到HTML类标记

  •  1
  • Deesha  · 技术社区  · 7 年前

    我有一个数据表,其中一列有一个“打印”选项。表的外观如下:

    行的HTML是从django视图生成的JSON dict加载的。

    列3的HTML如下所示:

    <button class=“classname_for_js”>
    打印
    &按钮/按钮;
    < /代码> 
    
    

    我有一个javascript文件:print.js:。

    jquery(“.classname_for_js”).on('click',printdata);
    < /代码> 
    
    

    printData()是一个调用打印API进行打印的函数。

    对于调试,我尝试控制台:

    jquery(“.classname_for_js”).on('click',function()。{
    console.log(“打印….”);
    (});
    < /代码> 
    
    

    但是,我在控制台上什么也得不到。

    我有另一个数据表,它的数据不是由JSON dict填充的,对于它,打印按钮可以正常工作。

    我可能做错什么了吗?

    行的HTML是从django视图生成的JSON dict加载的。

    列3的HTML如下所示:

    <button class="classname_for_js">
        PRINT
    </button>
    

    我有一个javascript文件:print.js:

    jQuery(".classname_for_js").on('click', printData);
    

    printData()是一个调用打印API进行打印的函数。

    对于调试,我尝试控制台:

    jQuery(".classname_for_js").on('click', function(){
         console.log("Printing.....");
    });
    

    但是,控制台上什么也没有。

    我有另一个数据表,它的数据不是由JSON dict填充的,对于它,打印按钮可以正常工作。

    我可能做错什么了吗?

    1 回复  |  直到 7 年前
        1
  •  2
  •   Satendra    7 年前

    您可以这样编写单击处理程序

    $(document).on('click', '.classname_for_js', function () {
        console.log("Printing.....");
    });
    

    你可以代替 document 已经存在于dom上的任何父元素

    注: 事件处理程序仅绑定到当前选定的 元素;它们必须在代码生成 调用。