ASP.NET引用.aspx文件中的控件

时间:2012-04-08 10:25:47

标签: asp.net

我有以下代码:

<html xmlns="http://www.w3.org/1999/xhtml">

<body style="height: 1336px">
<input type="hidden" id="loadingtime"/>
.
.
.
.
</body>
</html>

和Code.cs文件是:

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Diagnostics;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        string s = "";
        HiddenField t = (HiddenField)Page.FindControl("loadingtime");
        s = t.Value;
        Response.Write("<script language='javascript'>alert('It took : " + s + "')</script>");
    }
}

我收到错误 有什么想法吗?

编辑: 上述问题成功解决了 现在当我检索加载时间的值时,该值为空字符串。任何人都可以解决这个问题吗? enter image description here

1 个答案:

答案 0 :(得分:4)

您的输入应该有runat =“server”,使其能够被ASP.NET运行时解析,即

<input type="hidden" runat="server" id="loadingtime"/>

然后,您可以像使用后面的代码一样引用控件:

HiddenField t = (HiddenField)loadingtime;

由于它没有包装在另一个服务器控件中,例如asp:repeater,在这种情况下,您需要使用遍历控件层次结构的替代方法