id包含Jquery中的特定字符串名称

时间:2013-02-12 09:44:05

标签: javascript jquery

我有一个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>

5 个答案:

答案 0 :(得分:4)

使用indexOf()

if(id.indexOf(tmp) !== -1)
{
    $(id).addClass('box');
}

此外,你不应该有相同ID的元素,你应该使用类

答案 1 :(得分:2)

查看Attribute starts withAttribute ends withAttribute 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');