0

ボタンがクリックされたときに非表示のスパンを表示したい。私のhtmlは次のようになります:

<ul>
    <li>
         <span  class="sfFormlabel" style="display:none" >show</span>
        <div id="div1">
          <input type="button" value="show" class="show">
        </div>
    </li>
    <li>
         <span  class="sfFormlabel" style="display:none" >show1</span>
        <div id="div2">
          <input type="button" value="show" class="show">
        </div>
    </li>
</ul>

そしてjquery:

$('.show').live("click", function () {
    alert('test');
$(this).parent('li').children('span').show();
});

しかし、私は隠されたスパンを表示できません。
jsfiddle

4

2 に答える 2

1

の代わりに.parentsまたはを使用する必要があります。.closest.parent

$(this).parents('li').children('span').show();

または

$(this).closest('li').children('span').show();

PS: .liveは非推奨です.on。代わりに使用してください。

于 2012-08-29T05:16:39.123 に答える
0

簡単な解決策は次のとおりです。

$(document).ready(function() {
    $("#about").css("background-color","#222222");  

    $('.show').live("click", function () {
    alert('test');
$('.sfFormlabel').show();
});

});
于 2012-08-29T05:16:14.067 に答える