Javascript JQuery选择器没有';无法识别使用JS Replace函数创建的字符串

Javascript JQuery选择器没有';无法识别使用JS Replace函数创建的字符串,javascript,jquery,jquery-selectors,Javascript,Jquery,Jquery Selectors,我在使用JavaScript和JQuery运行以下代码段时遇到问题。listOfDisplayCategories是一个字符串值数组 使用FireBug进行调试时,我可以看到displayCategoryWithoutSpecialChar中设置的值是我期望的值 当我试图在下一条语句中使用这个值作为JQuery的选择器时,我看不到我所期望的行为 基本上,该值不能被识别为有效的选择器。它没有失败或给出错误,只是没有按照我期望的方式设置背景图像 如果我硬编码displayCategoryWithou

我在使用JavaScript和JQuery运行以下代码段时遇到问题。listOfDisplayCategories是一个字符串值数组

使用FireBug进行调试时,我可以看到displayCategoryWithoutSpecialChar中设置的值是我期望的值

当我试图在下一条语句中使用这个值作为JQuery的选择器时,我看不到我所期望的行为

基本上,该值不能被识别为有效的选择器。它没有失败或给出错误,只是没有按照我期望的方式设置背景图像

如果我硬编码displayCategoryWithoutSpecialChar变量中的值,则该变量可以正常工作。当我使用这个replace函数作为JQuery的选择器时,它返回的值似乎不起作用。有人能帮我吗

var displayCategoryWithoutSpecialChar = 
     listOfDisplayCategories[i].replace(/[^a-zA-Z0-9]+/g, "");
$("#"+displayCategoryWithoutSpecialChar).css("background-image","url(images/Aut.png)");

我遇到的问题是,我使用的选择器是基于还不存在的HTML的。此代码段位于创建HTML内容的for循环中。我试图指定的选择器用于尚未成为文档一部分的html。在添加HTML后,使用选择器和CSS函数移动行修复了该问题。我通过JQuery脚本调试到调用document.getElementById(String)的位置。此调用未返回元素。我仍然不清楚为什么硬编码字符串值允许这样做。新手错误。

还有要更改css的元素的HTML标记……数组中的第一个字符串是“Auto/Building Tech”。在替换功能之后,我有“AutoBuildingTech”。以下标记是css的目标。汽车/建筑技术“Lorem ipsum dolor sit amet,Concertetur adipiscing Elite posuere”