2011-08-08 15 views
0

ダイナミックaspxページのサイドバーにメニューがあります。 クエリ文字列の値に基づいて現在のリンクを強調したいと思います。 URLの最後の部分を取り、search方法についてを使用して、リンクのhref属性に対してそれをチェックするためにハイライトJqueryを使用したクエリ文字列に基づくリンク

$('#verticalmenu a').each(function(){ 
    var linktext = $(this).attr('href'); 
    if (linktext.search(window.location.search.substring(1)) > -1){ 
     $(this).addClass('current'); 
    } 
}); 

使用window.location.search.substring(1):jQueryを使って

<div id="verticalmenu"> 
<ul> 
<li><a href="services.aspx?pageid=11">Medical Transcription</a></li> 
<li><a href="services.aspx?pageid=12">Business Transcription</a></li> 
<li><a href="services.aspx?pageid=13">Legal Transcription</a></li> 
    <li><a href="services.aspx?pageid=14">Insurance Transcription</a></li> 
    <li><a href="services.aspx?pageid=15">Data Entry & Processing</a></li> 
    <li><a href="services.aspx?pageid=16">Software Development</a></li> 
    <li> <a href="services.aspx?pageid=25">Typesetting Services</a></li> 
</ul> 
</div> 

答えて

3

、それはこのようなものを見ることができますjavascript-strings。次に、スタイリング目的のクラス名を追加します。例えば、currentを使用しました。

調整が必要な場合もありますが、これはやり方です。しかし、私は強くこのリンク認識サーバサイドを行うことをお勧めします。これは私があまりにも誇りに思っていない回避策です。

+0

location.pathnameがクエリ文字列を返さない – ziaasp

+0

私は自分の答えを編集しました。 'window.location.search.substring(1)'を試しました –

+0

ありがとうございました。はい、私はserversideからそれを行うことができますが、私はjquery thatsを勉強したいのですか? – ziaasp

関連する問題