2013-02-12 46 views
0

我有一個tmp變量。如果一個標籤id包含tmp字符串想要addClass。怎麼做?id在Jquery中包含特定的字符串名稱

$(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> 

回答

3

使用indexOf()

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

而且你不應該有相同ID的元素,你應該使用類而不是

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>
0

試試這個

var tmp = "lnkPage1"; 
$("a[id*='"+tmp+"']").addClass('box'); 
0

試試這個:

var tmp = "lnkPage" + id; // <-----remove the hash '#' 

$('[id$="'+tmp+'"]').addClass('box'); 
相關問題