5

以下のコードとここのデモhttp://jsfiddle.net/jasondavis/vp2YN/3/で、クリックされたアイテムのID属性を取得し、それをJavascriptの変数に割り当てる必要があることがわかります。

現在、コードは、クリックされたアイテムに関係なく、最初のアイテムのID名を返します。

Javascriptで、私がこの行をコメントアウトしていることがわかります...

var clickedID = this.attr("id"); その行を使用すると、次のようなエラーが発生します。Object has no method 'attr'

クリックしたリンクのID名を取得し、それを変数に割り当てるのを手伝ってください

HTML

<a href="#" style="display:block" class="button insertcolumn" id="one_half">2 Columns</a>

<a href="#" style="display:block" class="button insertcolumn" id="one_third">3 Columns</a>

<a href="#" style="display:block" class="button insertcolumn" id="one_fourth">4 Columns</a>​

Javascript / jQuery

jQuery('.insertcolumn').click(function(){

    var clickedID = jQuery('.insertcolumn').attr("id");
    //var clickedID = this.attr("id");

    alert(clickedID);

});​

デモhttp://jsfiddle.net/jasondavis/vp2YN/3/

4

1 に答える 1

9

jQueryラッパーでクリックしたものを参照する必要があります!

使いたい

$(this).attr('id');

IDを取得するには(理由もなくDOMをトラバースせずに)、オブジェクトを呼び出すだけの方がよいでしょうid

this.id; 

ただし、属性のタイプに関係なく、属性の名前に応じてプロパティにアクセスするには、次のコードを使用します。

jQuery('.insertcolumn').click(function(){

    var clickedID = $(this).attr('id');


    alert(clickedID);

});​
于 2012-09-15T20:45:47.750 に答える