【发布时间】:2023-03-29 20:13:02
【问题描述】:
当我单击图像时,我试图确定图像源是否包含字符串。图像具有 .swap-color 类。我将变量 $current_swatch 设置为图像 src 属性,并且测试成功。我的代码如下。无论我单击什么图像,我都会收到“包含 TB”的警报,即使图像 src 中没有 TB。我做错了什么?
<img src="/images/Swatch-TB.jpg" class="swap-color"/>
$("document").ready(function () {
$('.swap-color').click(function () {
//get the image src
var $current_swatch = $(this).attr('src');
//check if TB is in the src
if ($('$current_swatch:contains("TB")').length > 0 ) {
alert ('Contains TB');
} else {
alert ('Does not contain TB');
}
});
});
【问题讨论】:
-
在 Javascript 中,变量不会在字符串中展开,您应该使用连接。
-
而
:contains不是用于搜索字符串,而是用于搜索 DOM 元素。 -
为什么投反对票?这是一个完全合理、结构合理的问题?
-
有些人对任何表明发布者毫无头绪并且没有自己进行任何调试的问题投反对票。就像使用 JS 控制台查看
$('$current_swatch:contains("TB")')返回的内容一样。 -
@Barmar - 很高兴再次在这里遇到你,感谢你的辛勤工作!好的cmets,好的编辑。感谢您的洞察力!
标签: javascript jquery