如何访问 HTML 标记在 ASP.NET 代码隐藏无需回发

标签: Asp.net HTML CSS
发布时间: 2017/3/26 5:16:04
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我访问元素后面的代码中的当前的方式是通过使他们服务器。

示例

<div id="abc" runat="server" > Test </div>

然后在后面的代码我可以简单地使用像 abc.visible=false 一样的东西

然而,这似乎引起回发。其他可能的方式来访问元素从回发或禁用后后面是什么。

我想要隐藏元素的原因是取决于他们的角色有些用户不应该能够看到这些元素。

解决方法 1:

这不会导致回发,但你不能从服务端访问元素,如果你不是在服务器上。如果你只是想要隐藏这些客户端可以使用 javascript/jQuery 和 CSS。然而,元素是 Visible=false (服务端) 在客户端上根本不存在。

因此, runat=server 并不会导致更多比没有它的回发。它只是说它已创建控件在服务器内存中,这样你就能够访问它那里的 ASP.NET。

但如前所述,如果您想要更改的可见性问题无需回发,您不能使用客户端的 Visible=false 。然后使用 CSS 类或内联︰

abc.Attributes.Add("style", "display:none");

或没有代码隐藏文件︰

<div id="abc" style="display:none"> Test </div>

现在可以访问它从客户端,即使它是无形的例如要切换可见性。

官方微信
官方QQ群
31647020