我有一个tmp变量。如果标签id包含想要addClass的tmp字符串。怎么办?
$(document).ready(function () {
var tmp = "#lnkPage" + id;
$("#pageingdiv").children().each(function (n, i) {
var id = this.id;
//if (id.contains(tmp)) {
// $(id).addClass('box');
//}
});
});
<div id="pageingDiv">
<a id="CPH_Content_C002_lnkPage1" ></a>
<a id="CPH_Content_C002_lnkPage2" ></a>
<a id="CPH_Content_C002_lnkPage3" ></a>
<a id="CPH_Content_C002_lnkPage4" ></a>
</div>
</div>
答案 0 :(得分:4)
使用indexOf()
if(id.indexOf(tmp) !== -1)
{
$(id).addClass('box');
}
此外,你不应该有相同ID的元素,你应该使用类
答案 1 :(得分:2)
查看Attribute starts with,Attribute ends with和Attribute contains选择器。它们将帮助您直接选择所需的所有元素,而无需调用除.addClass()
之外的任何其他功能。 :)
答案 2 :(得分:1)
您可以使用jQuery( "input[id*='value']" )
选择器检查其是否包含特定字符串作为ID。
经过测试的代码
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(function()
{
$( "a[id*='lnkPage']" ).addClass('SampleClass');
});
</script>
<div id="pageingDiv">
<a id="CPH_Content_C002_lnkPage1" ></a>
<a id="CPH_Content_C002_lnkPage1" ></a>
<a id="CPH_Content_C002_lnkPage1" ></a>
<a id="CPH_Content_C002_lnkPage1" ></a>
</div>
答案 3 :(得分:0)
试试这个
var tmp = "lnkPage1";
$("a[id*='"+tmp+"']").addClass('box');
答案 4 :(得分:0)
试试这个:
var tmp = "lnkPage" + id; // <-----remove the hash '#'
$('[id$="'+tmp+'"]').addClass('box');