10

我有一组 ASPX 页面,其中每个页面都有不同的标题,但我想为没有标题的页面设置默认标题。默认标题必须是可配置的。

4

6 回答 6

15

If this is classic ASP.NET (not MVC) and you are using MasterPage then you can set default title in Page_Load event in MasterPage:

protected void Page_Load(object sender, EventArgs e)
{
      if (string.IsNullOrEmpty(Page.Title))
      {
           Page.Title = ConfigurationManager.AppSettings["DefaultTitle"];  //title saved in web.config
      }
}
于 2013-06-07T11:31:41.757 回答
5

你可以这样做:

设置 aspx 标头是这样的

<HEAD> 
<TITLE ID=CaptionHere RUNAT="server"></TITLE> 
</HEAD> 

在后面的代码中将其放入页面加载事件中:

if(!IsPostBack)
{
  myCaption.InnerHtml = "Hope this works!"
}

我希望这能帮到您

于 2013-06-07T11:33:09.703 回答
4

我有一个类似的问题,这些解决方案都不适合我。问题源于页面的顺序控制事件触发。在我的例子中,我有一些代码需要在 Page_load 事件中(这是因为这是我们有一个 Request 对象可以使用的第一个事件)。该代码还需要在设置标题之前运行。我站点中的其他页面能够简单地在页面 Ctor 中设置所需的标题,但是因为该页面需要首先询问响应对象以获取信息,所以这是一个问题。这样做的问题是,当我们到达 Page_load 事件时,母版页已经创建了页眉部分,我不希望我的母版页中出现垃圾,而我的网站上只有一个页面才需要这些垃圾。

<asp:Content ID=BodyContent ContentPlaceHolderID=MainContent RunAt=Server>
    <script type="text/javascript">
        document.title='<%=Title%>';
    </script>

    ... the rest of the content page goes here ...

</asp:Content>

有了这个,您就可以在 Page_Load 事件中自由设置标题,并且一旦下载了这行代码,它就会被设置。当然,我的网站已经有 JS 要求,所以如果你想避免这种情况,那么这对你不起作用。

于 2017-03-30T19:37:54.983 回答
1
protected void Page_Load(object sender, EventArgs e)
{
     Page.Title = title();
}
private string title()
{

    SqlConnection con = new SqlConnection(cs);
    string cmdstr = "select * from title where id = 2";
    SqlCommand cmd = new SqlCommand(cmdstr, con);
    DataTable dt = new DataTable();
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    con.Open();
    da.Fill(dt);
    con.Close();
    if (dt.Rows.Count > 0)
    {
        string title = dt.Rows[0]["title"].ToString();
    }
    return title;
}

这很有帮助

于 2015-04-28T16:10:42.537 回答
0

在您的母版页代码后面,您可以设置[this.Title = "Whatever";]或指定 HTML 中的默认标题。

于 2013-06-07T11:22:41.823 回答
0

我想和你一样改变主页的标题。在您主机的主文件中,包含所有主页代码,不同网站上的名称可能不同。打开它,然后在标题标签内查找标题标签。如下,您可以根据自己的喜好进行更改。如果你想在标题下写一些东西,就像我在Irpolymer页面上所做的那样,你必须添加一个

标记并编写您想要的文本,然后您可以设置它的样式或更改其大小,然后保存。考虑在进行更改之前备份您的服务,以便在出现问题时可以恢复您的站点。

 <head runat="server">
 <title>Untitled Page</title>
 <p>something you want</p>
 <asp:ContentPlaceHolder id="head" runat="server">
 </asp:ContentPlaceHolder>
 </head>
于 2020-07-19T05:54:47.127 回答