JQuery - 隐藏复选框和文本

时间:2010-10-13 13:14:20

标签: jquery checkbox

我正在尝试隐藏一个asp:CheckBox控件,具体取决于屏幕上是否显示某个链接。该复选框具有text attribute =“hello”。我正在尝试在JQuery中执行此操作。

我目前有以下内容:

$(document).ready(function(){

    hideCheckboxButtonIfLinkExists();

    }  );   

    function hideCheckboxButtonIfLinkExists() {

        var $myCheckBox = $('#<%= ckMyCheckBox.ClientID %>');
        var $myLink = $('#<%= lkMyLink.ClientID %>');

        if($myLink .is(':visible'))
        {
            $myCheckBox .show();                               
        } 
        else
        {
            $myCheckBox .hide();
        }    

    }  

当我打开页面时,如果链接不可见,则复选框不可见,但复选框文本属性“hello”可见。

我怎么能隐藏这个?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:7)

您可以像这样显示/隐藏标签:

var $myLabel = $myCheckBox.next('label');

if($myLink .is(':visible'))
    {
        $myCheckBox.show();
        $myLabel.show();                 
    } 
    else
    {
        $myCheckBox.hide();
        $myLabel.hide();                 
    } 
}

我假设你正在使用ASP.NET,所以上面的代码应该这样做。如果您的复选框嵌套在标签内,则可以改为显示/隐藏标签。

答案 1 :(得分:2)

将复选框及其文本包装在一个元素中,然后显示/隐藏它。 label元素可能是最佳选择,因为它具有其他优点:

<label id="clientid-label"><input type="checkbox"> Hello</label>