0

我想让标签在母版页中定义的子页面中不可见。有没有办法做到这一点?

4

2 回答 2

0
((Label)Master.FindControl("mylbl")).Visible = false;

把这个放在子页面的页面加载中,mylbl指的是标签的ID

可能是Master.Page.FindControl ....现在我想起来了,已经有一段时间了,但你就是这样做的

于 2013-04-06T03:00:36.703 回答
0

你应该使用javascript。通常在这种情况下,您会使用(假设您的标签的 ID 是 my_label_id)引用您的标签

document.GetElementById('<%= my_label_id.ClientId %>')

. . . 或者如果您使用的是 jquery 。. .

$('#<%= my_label_id.ClientId %>')

但是,AFAIK 您不能使用 clientid 从内容页面引用位于母版页上的服务器端控件。因此,我要么使用 asp.net 标签属性为控件提供唯一的类名,要么CssClass="myLabelClass"通过构建页面、查看源代码并查找客户端 ID 来检索客户端 ID。可以在此处找到此步骤: 如何在内容页面中使用 javascript,asp.net

正确引用该项目后,只需将“显示”样式属性更改为“无”,如下所示。使用 jQuery 并假设您的 CssClass 名称是myLabelClass

$('.myLabelClass').css('display','none');

如果您希望在页面加载时发生这种情况,您可以执行以下操作:

$(function(){
    $('.myLabelClass').css('display','none');
});
于 2013-04-06T03:07:13.183 回答