C# 如何从Codebehind获取标签内部文本

C# 如何从Codebehind获取标签内部文本,c#,asp.net,html,C#,Asp.net,Html,我有html标签控件,没有runat=“server” 是否可以从c#后面的代码中获取内部文本 标签: <label id="lblClanName">Text Here</label> 这里的文本 谢谢我认为你做不到。或者你可以使用js获取标签,并从代码隐藏中调用js方法每次ASP.Net页面发回服务器时,它都会使用页面中包含的自定义代码(例如对数据库的调用)、HTTP post/get集合从头开始重新创建(包括ViewState),应用程序中的任何自定义数据,缓存

我有html标签控件,没有runat=“server”

是否可以从c#后面的代码中获取内部文本

标签:

<label id="lblClanName">Text Here</label>
这里的文本

谢谢

我认为你做不到。或者你可以使用js获取标签,并从代码隐藏中调用js方法

每次ASP.Net页面发回服务器时,它都会使用页面中包含的自定义代码(例如对数据库的调用)、HTTP post/get集合从头开始重新创建(包括
ViewState
),
应用程序中的任何自定义数据
缓存
会话
,静态对象等

如果这些位置中的任何一个位置都不存在该值,则服务器无权访问该值。从客户端传递数据的一个常见技巧是简单地使用隐藏字段。如果您想要更优雅的内容,可以使用异步AJAX从服务器发送/接收数据

或者在这种情况下,您可以只将
runat=“server”
添加到
asp:Label
ViewState
将在回发之间保持该值,尽管它不会反映客户端所做的更改,除非(再次)以某种方式将数据传递回服务器


请注意,
ViewState
通常是一件坏事,因为它实际上使数据的大小增加了一倍(或更多),并且(在我看来)鼓励草率的设计。

您想知道如何解析内部html的字符串值,还是希望您的网页在运行时将文本写入标签

string labelHtml = "<label id="lblClanName">Text Here</label>";
   XmlDocument doc = new XmlDocument();
   doc.LoadXml(labelHtml);
   string innerText = doc.DocumentElement.InnerText;
string labelHtml=“Text Here”;
XmlDocument doc=新的XmlDocument();
doc.LoadXml(labelHtml);
字符串innerText=doc.DocumentElement.innerText;
为什么你需要标签之间的文字,这是一个实时网页吗?这听起来像是一个糟糕的设计,而不是一个要求。

简短回答:不

要从代码隐藏中访问此内容,您只需将
runat=“server”
添加到
标签中即可。这将允许您使用

如果您能够修改前端代码,则首选方法是使用。这将允许您只需在代码后面使用控件的ID,特别是其
Text
属性,即可轻松访问