function dowork()
{
$(".wrappedElement").removeClass("wrappedElement");
$(".wrappedElementout").removeClass("wrappedElementout");
var a=$("div#DepPart select option:selected").val();
$("div#TestPart select option[value^=a]").addClass("wrappedElement");
$("div#TestPart select option[value!=a]:not(div#TestPart select option[value^=a])").addClass("wrappedElementout");
}
在此函数中,var a 获取字符串格式的值 (a="HMT"),当我使用该值作为 jQuery 选择器的一部分时,它由于某种原因不起作用。有人可以提出解决方案吗?
最佳答案
问题是您没有在任何地方引用变量a
,您只是在字符串中包含字母“a”。您需要将变量 a
中的值与用作选择器的字符串连接起来:
$("div#TestPart select option[value^='" + a + "']").addClass("wrappedElement");
$("div#TestPart select option[value!='" + a + "']:not(div#TestPart select option[value^='" + a + "'])").addClass("wrappedElementout");
另请注意,带有方括号属性的 jQuery 选择器 equals something 语法要求 something 包含在引号中(我在上面已经包含了)。
使用您的示例值 a
,“HMT”,连接后第一个选择器最终将如下所示:
"div#TestPart select option[value^='HMT']"
(另一行类似。)
关于jquery - 这个 jquery 有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8924553/