无法从搜索结果中单击结果项

时间:2020-05-04 16:29:24

标签: javascript jquery pug jade4j

我正在用翡翠在一张桌子上显示一页,上面有70个物品,而且我还有搜索栏来搜索物品。 如果我单击某个项目,则在div中该项目的左侧显示详细信息。 这个搜索和设计是在玉器内部的脚本中完成的 但是项目的click事件和更改项目单击时的数据是通过写在另一个js文件内部的jquery代码完成的。 现在,首次可点击的项目便能够查看项目点击的变化。但是在搜索之后,如果我单击了任何项目,则单击功能不会调用。但是脚本已包含在内。 这是我的代码,请检查

$('.icons-container .icons-item-container').on('click', function() {
var icon = JSON.parse($(this).attr('data-icon'));
console.log('icon ==', icon);
setIconDetail(icon);
$('.selected-icon').removeClass('selected-icon');
$(this).addClass('selected-icon');

});

function setIconDetail(icon) {
hljs.initHighlightingOnLoad();
iconData = icon;
var rightPanel = $('#right-panel');
rightPanel.find('h3').text(iconData.name);
rightPanel.find('#fileName').text(iconData.fileName);
if (iconData.description === '') {
    rightPanel.find('.desc-div').css('visibility', 'hidden');
} else {
    rightPanel.find('.desc-div').css('visibility', 'visible');
}
rightPanel.find('#description-content').text(iconData.description);
rightPanel
    .find('code')
    .html(
        '<svg>\n\t<use xlink:href="myicons.icons.svg#' +
        iconData.fileName +
        '">\n\t</use>\n</svg>'
    );
$('pre code').each(function(i, block) {
    hljs.highlightBlock(block);
});

}

我和玉我已经写过这样的代码

 const newData = data.filter(function (icon) {
                                    return icon.name.toLowerCase().includes(value.toLowerCase());
                                });
                                cleanTable();
                                const parentElement = document.getElementsByClassName('icons-container')[0];
                                buildTable(newData);

0 个答案:

没有答案