【发布时间】:2020-04-17 20:53:58
【问题描述】:
我想在 webforms 中设置 HTML 标签的 lang 属性,这样在英文的情况下,输出将是
<html lang="en">
我就是这样做的;在标记中,我有这个:
<html id="SomeID" runat="server">
在后面的代码中,我有这个:
SomeID.Attributes.Add("lang", "en"); // or SomeID.Attributes.Add("lang", "fr");
问题是实际输出是
<html id="SomeID" lang="en">
标签的 ID 仍然存在,所以我尝试添加:
SomeID.Attributes.Remove("id");
但 ID 仍然显示。
那么如何在我的代码隐藏文件中设置 lang 属性,以便 HTML 标签只有 lang 属性。
【问题讨论】:
-
请尝试使用搜索。查询 "asp.net html tag lang attribute" 给出了提到的重复项和其他各种。
-
其实不是重复的;例如,您链接到的答案已经完成了问题中的内容。我在问如何设置语言,然后删除 id="SomeID" 属性,以便它不会显示在 HTML 输出中。现在,输出是
-
您可以做到这一点,甚至不需要 ID 属性,如该问题所示。
-
@CodeCaster:我试过了,但如果不给它一个 ID,我就无法访问控件。你如何引用控件?有 Page.FindControl(id) 但它采用 string(id) 作为参数,所以仍然需要给标签一个 ID?
-
你不需要访问控件; 在您的代码中创建一个变量并按照建议的方式使用它:
<HTML lang="<%= PageLanguage %>">.