2017-04-25 4 views
0

クリックすると、リンクIDにスタイリングを追加したいと思います。私は要素のIDを取得する方法を考えましたが、スタイルを追加することは機能しません。ここに私のサンプルコードです:jQueryクリックしたときにIDにスタイリングを追加する

<a href="#" id="page_1" class="pagelink" >Page 1</a> 
    <a href="#" id="page_2" class="pagelink" >Page 2</a> 

    $('a.pagelink').click(function() { 
     var id = $(this).attr('id'); 
     console.log(id); 
     $('#id').css("background","yellow"); 
    }); 
+3

$( '#' + id).css( "background"、 "yellow"); –

答えて

5

あなたは間違ってクエリを構築しています。

最終ラインは

$('#'+id).css("background","yellow"); 
+0

haha​​。私の悪い。ありがとう。できます! :) – jovenne

1

使用$(この)の.css( "背景"、 "黄")である必要があります。

$('a.pagelink').click(function() { 
 
      var id = $(this).attr('id'); 
 
      console.log(id); 
 
      $(this).css("background","yellow"); 
 
     });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<a href="#" id="page_1" class="pagelink" >Page 1</a> 
 
     <a href="#" id="page_2" class="pagelink" >Page 2</a>

1

あなたは、 "ID" のIDではなく、あなたのid変数に保持された値をターゲットにしています。これを代わりに使用してください:

$('#' + id).css("background","yellow"); 

ここでIDを取得することは、範囲のために既に要素にアクセスしているため、少し冗長です。代わりに、次のものを使用することができます:

関連する問題