我正在尝试隐藏一个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”可见。
我怎么能隐藏这个?
提前感谢您的帮助。
答案 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>