1

こんにちは私は動的に追加されるいくつかの要素のtagNameを取得しようとしていますが、クリックするたびに未定義になります。状況をシミュレートする簡単な例を作成しました。コードは次のとおりです。

 <ul>
      <li>sdsa</li>
      <li>dsa</li>

  </ul>
  <button>Press</button>

 $(document).ready(function(){
           var i=0;
           $("button").on("click" , function(){
                $("ul").append("<li>" + i++ + "</li>");
           })

           $("ul").on("click" ,"li" , function(){
               alert($(this).tagName);
           })
       })

liタグをクリックするたびに、未定義になります。この問題を解決するにはどうすればよいですか?

4

2 に答える 2

2

これを変える。、。

alert($(this).tagName);

これに...

alert(this.tagName);

tagNamejQueryオブジェクトではなく、DOM要素のプロパティです。

于 2012-07-25T14:05:27.487 に答える
2

tagNameはネイティブのjavascriptであり、jQueryではないため、jQueryオブジェクトではなくDOM要素である必要があります。

this.tagName
于 2012-07-25T14:05:58.997 に答える