在页面加载时将数据传递给javascript

时间:2010-04-28 23:21:18

标签: c# .net asp.net javascript parameters

我想将数据传递给id

<script language="javascript" src="/foo.aspx?id=1"></script>

我在aspx页面中有这段代码。

在执行此代码之前,应该在加载时传递数据。

我该怎么做?

3 个答案:

答案 0 :(得分:3)

在代码隐藏文件中有一个属性,比如

protected string FooId
{
    get { return ... }
}

然后在ASPX文件中,像这样引用它:

<script language="javascript" src="/foo.aspx?id=<%= FooId %>"></script>

答案 1 :(得分:2)

ASP.NET的语法<%= %>等同于Response.Write。

然后,您可以将您的ID存储在属性中,例如: protected int Id {get;set;}并将其设置在Page_Load

然后,你会这样做:

<script language="javascript" src="/foo.aspx?id=<%= Id %>"></script>

答案 2 :(得分:2)

我越来越反对把&lt; %%&gt;在.aspx文件中,主要是因为你可以陷入可怕的结,试图逃避各种报价。

这是另一种方法:

<asp:Literal id="myscript" runat="server"/>

然后在服务器端,当您处理Page_Load()时:

int theID = 42;
myscript.Text = string.Format("<script type=\"text/javascript\" " +
           " src=\"/foo.aspx?id={0})\"></script>", theID);

编辑:用C#重写:)