2
<table class='generic'>
<script>
$('#select_bh').click(
    function(){
        if($('#select_bh')[0].checked){
        $('#hide_box_bh_s').show();
        }
        else{
        $('#hide_box_bh_s').hide();
        }
    }
);
</script>
<tr>
    <td>
        <b><input type="checkbox" id="select_bh" name="pj_boilerhouse" value="Boiler_House"/>Boiler House</b>
    </td>
</tr>
<tr>
    <td>
        <span id='hide_box_bh_s' style='display:none'>
            &nbsp;&nbsp;<b><input type="checkbox" class="case_bh_s" name="pj_bh_s" value="Structural"/> Structural</b>
        </span>
    </td>
</tr>
</table>

JavaScript中的显示显示/隐藏不起作用..请提供一些建议,谢谢..当我选中复选框时,它会在现有行下有一个新行

4

2 回答 2

1

它在这里工作你可以看到代码http://jsfiddle.net/damian_silvera/9ym5Y/

于 2012-09-04T02:14:11.653 回答
1

您应该将代码放在文档就绪处理程序中,您的代码不起作用,因为您已将事件处理程序绑定到尚未添加到 DOM 的元素。就绪处理程序中的代码在 DOM 完全加载后执行。另请注意,Java不是JavaScript

$(document).ready(function(){
   $('#select_bh').click(function(){
        $('#hide_box_bh_s').css('display', this.checked ? 'block' : 'none');
   });
})

我使用了条件运算符,它是if语句的快捷方式,如果选中该复选框,则将display属性的值设置为,block否则将其设置为none.

于 2012-09-04T02:00:51.640 回答