如何搜索元素名称+变量的一部分

时间:2017-03-23 15:19:03

标签: jquery

我可以使用变量名的开头搜索所有id:

  

" month2015Jan" (其中一个内容

     

" month2015Feb" (其中一个id')

$('[id^="month"]').prop('disabled', false)

但是我想在今年使用一个变量:

KEYyear = "2015"

我试过了:

$('[id^="month" + KEYyear]').prop('disabled', false)
$('[id^="month"]'+ KEYyear).prop('disabled', false)
$('[id^="month"] + KEYyear').prop('disabled', false)

没有任何作用。任何人的想法?

2 个答案:

答案 0 :(得分:2)

这是正确的方法:$('[id^="month' + KEYyear + '"]'),或者,为了使其更明确:

var idPattern = 'month' + KEYyear; // What you're looking for
var jqPattern = '[id^="' + idPattern + '"]'; // What the selector looks like
$(jqPattern)...

您的第一个模式几乎是正确的,但它正在寻找"month"2015而不是"month2015"

答案 1 :(得分:1)

您只需使用month符号将其与+字符串连接起来,例如:

var KEYyear = "2015";
$('[id^="month' + KEYyear + '"]').prop('disabled', false);

在这种情况下,这将返回idmonth2015开头的所有元素。

希望这有帮助。