如何在jQuery属性选择器中使用变量?

p4tfgftt  于 2023-03-17  发布在  jQuery
关注(0)|答案(3)|浏览(145)

我有一个带有几个选项的选择框-每个选项值对应下面一些图片上的“value”属性。我想要的功能是当选择框的值被更改时,带有相应值的img会用红色边框突出显示。下面是代码:

function assignValue() {
  selectboxvalue = $('#Box_style').val() ;
  $('.tabContent img[value="+selectboxvalue+"]').css({border: '1px solid #c10000'});
}

$('#Box_style').change(assignValue);

浏览一下jquery文档(http://api.jquery.com/attribute-equals-selector),显然这应该可以工作......
任何帮助将不胜感激,谢谢!

vlurs2pr

vlurs2pr1#

jQuery 1.7之前的版本

以下方法有效:

$('.tabContent img[value='+selectboxvalue+']').css({border: '1px solid #c10000'});

jQuery 1.7及更高版本

在1.7中,jQuery更改了语法,要求attributes在值周围使用引号:

$('.tabContent img[value="'+selectboxvalue+'"]').css({border: '1px solid #c10000'});
z2acfund

z2acfund2#

引用是混乱的:

$('.tabContent img[value="'+selectboxvalue+'"]').css({border: '1px solid #c10000'});
jecbmhm3

jecbmhm33#

对于上面的代码,它不再像上面提到的那样工作(尽管它也可能只是我的代码)。单引号把代码弄得一团糟。

从jQuery 3.2.1及更高版本开始

$("#clickmap a[gruppe="+gruppeId+"]").children("path").addClass('lastClicked');

相关问题