隐藏基于选定的单选按钮

时间:2013-02-26 23:32:59

标签: javascript jquery html radio-button

我想根据从单选按钮中选择的值隐藏表格行。 这些单选按钮是根据从下拉列表框中选择的值创建的。

这是我的代码

列表框的HTML代码

<select name="txtLT" id="LT" >
    <option value="a">a</option>
    <option value="b">b</option>
    <option value="c">c</option>
</select>

Jquery的

$(document).ready(function() {
    $("#LT").change(function() {
        var selVal = $(this).val();
        $("#tblerow").html('');
        if(selVal == 'c') {
            $("#tblerow").append('<td><input type="radio" id="cmpof" name="cmpof" value="1" onclick="show()" />1 <input type="radio" id="cmpof"  name="cmpof" value="2"  onclick="hide()"/>2</td>');            
        }
    });
});

现在,如果选择了单选按钮2,那么带有tr2的表格行应该会消失。 请帮我找到解决方案。

修改

我尝试了以下JavaScript,但它没有隐藏该行。

function show() { document.getElementById('sbjrow').style.display = 'block'; }
function hide() { document.getElementById('sbjrow').style.display = 'none'; }

请问你能在这里提出什么问题?

1 个答案:

答案 0 :(得分:1)

你可以像这样使用jQuery的hideshow函数:

$(function () {
    $('#LT').change(function () {
        if ($(this).val() == 'c') {
            $('.radios').show();
        } else {
            $('.radios').hide();
        }
    });
    $('input[name=cmpof]').change(function () {
        if ($('#LT').val() == 'c' && $(this).val() == 'bar') {
           $('#table tr').eq(1).hide(); 
        } else {
           $('#table tr').eq(1).show(); 
        }
    });
});

如果您不希望默认情况下显示表格行,只需使用css。

JsFiddle示例:http://jsfiddle.net/AX5TJ/1/
可能更接近您想要的更新版本:http://jsfiddle.net/AX5TJ/2/

另外请注意,您的脚本中存在语法错误:定义$("#LT").change(function() {时,您必须使用});

关闭