1
 <ul id="parent">

 </ul>

 <script>
   var li =$('<li onclick="clicked(this)"/>').appendTo($('#parent'));
   var span=$('<span/>').text('first').appendTo(li);  
   var ul1=$('<ul onclick="clicked(this)"/>').appendTo(li);
   var li1=$('<ul onclick="clicked(this)"/>').appendTo(ul1);
   var span1=$('<span/>').text('second').appendTo(li1);   

   function clicked(ref)
   {
      alert($(ref).children('span').text());
   } 
</script>

私の問題は、2 番目をクリックすると、アラートボックスが 2 回ポップアップし、1 番目と 2 番目の両方が表示されることです。しかし、私は2番目だけが欲しいです。

のみを参照するにはどうすればよいですかli1

4

3 に答える 3

1

あなたはli1子として別のliに追加しています。それがあなたの望みかどうかはわかりませんが、そうすべきではありません。これが、2 つのアラートを受け取る理由でもあります。両方の onclick ハンドラーがトリガーされます。

于 2013-07-26T06:08:11.440 に答える