0

我正在尝试在表单内显示/隐藏带有特定内容的文本扩展.class。通过选择正确的rodio,.class扩展应该显示出来。在表单中选择任何其他选项时,扩展应该隐藏。我使用 jQuery toggle() 函数尝试了它,但是通过在任何收音机上再次单击扩展 - 无论是否选中 - 都会再次显示或隐藏。

它应该仅在选择了带有此.class功能的收音机时才显示:

跨度类="span_home_2"

我试过的 toggle() 是这样的:

jQuery:

$(document).ready(function(){
    $("input").click(function(){
        $(".span_home_2").toggle();
    });
});

HTML:

<form class="banner_location_box">
    <label class="label_head">
        <?php echo $lang ['select_page']; ?>
    </label>
    <br/>
    <label class="select_page">
        <input type="radio" class="select_location" name="page_id" value="1" checked="checked"/>
        <span><?php echo $lang ['home']; ?><span class="span_home_2">(<?php echo $lang ['available_only']; ?>)</span></span>
    </label>
    <br/>
    <label class="select_page">
        <input type="radio" class="select_location" name="page_id" value="2"/>
        <span><?php echo $lang ['business']; ?></span>
    </label>
    <br/>
    <label class="select_page">
        <input type="radio" class="select_location" name="page_id" value="3"/>
        <span><?php echo $lang ['jobs']; ?></span>
    </label>
    <br/>
</form>

有没有更好的办法?

4

3 回答 3

0

尝试这个:

$(document).ready(function () {
    $("input").click(function () {
        $(this).parent().find("span").toggle();
    });
});

演示在这里

另外的选择:

于 2013-09-11T21:59:24.670 回答
0

改变这个:

$("input").click(function(){
    $("span").toggle();
});

对此:

$("input").click(function(){
    $("span.span_home_2").toggle();
});
于 2013-09-11T22:01:26.893 回答
0
$(document).ready(function(){
     $("input").click(function(){
          $(".span_home_2").toggle();
     });
});
于 2013-09-11T22:04:23.423 回答