在 EJS 表中使用 jPicker

Posted

技术标签:

【中文标题】在 EJS 表中使用 jPicker【英文标题】:Using jPicker in an EJS table 【发布时间】:2017-03-13 09:06:25 【问题描述】:

我正在尝试在我的表 <td> 中添加一个 jPicker。我以这种方式使用 EJS 创建表:

<table>
    <tr>
        <td><%= setting[i].name %></td>
        <td><span style="background-color: red" class="Alpha"></span></td>
    </tr>
</table>

在最后一个td 中,我为颜色选择器添加了span。 jPicker 的代码是这样的:

$('.Alpha').jPicker(
    window: 
        expandable: true
    
);

为什么这在 EJS 表中不起作用?我刚刚在常规表中检查了它,它正在工作。

【问题讨论】:

你有多少个id为Alpha的元素? 我还有 5 个元素 你的问题。 id 属性必须是唯一的。将它们改为类 @RoryMcCrossan 我编辑了问题。通过将 id 更改为 class。但它仍然无法正常工作 【参考方案1】:

如果没有匹配到 .Alpha 元素,这可能是因为在该代码运行时还不存在任何元素。

确保您的 $('.Alpha').jPicker() 代码出现在您的 ejs 文件中的表之后,或者您在 $(document).ready() 或类似文件中进行包装,以确保它等待 DOM 完成写入在尝试匹配其中的元素之前,例如:

$(document).ready(function()
    $('.Alpha').jPicker(
        window: 
            expandable: true
        
    );
);

【讨论】:

以上是关于在 EJS 表中使用 jPicker的主要内容,如果未能解决你的问题,请参考以下文章

如何在编写变量 ejs、node.js 时禁用默认修剪?

EJS 包含在单独的 ejs 文件中定义的函数

EJS-初识

ejs模板引擎的使用

EJS模板引擎

如何在 EJS 视图中使用节点模块(如 MomentJS)?