如何在asp.net中将服务器端页面的值传递给客户端功能

时间:2010-07-30 13:03:28

标签: c# asp.net

在我的应用程序中,我需要将服务器端的字符串值(.aspx.cs)传递给客户端(.aspx)页面中的函数。

任何人都可以通过提供想法和示例代码来帮助我吗?

3 个答案:

答案 0 :(得分:9)

如果你的意思是你需要将值传递给javascript函数,你可以做的就是这样......

在.aspx文件中:

<script language="javascript" type="text/javascript">
  var stringValue = '<%=GetStringValue();%>';

  // For example:

  alert(stringValue);
</sctipt>

在.aspx.cs文件中:

private string GetStringValue()
{
  return "A string value";
}

这将显示一个javascript消息框,当页面加载

时说“字符串值”

答案 1 :(得分:1)

您可以在服务器端生成脚本并将值嵌入其中:

StringBuilder sb = new StringBuilder();
sb.Append("<script type=\"text/javascript\"");
sb.Append("var someFunc = function(){");
sb.AppendFormat("alert('{0}');", importantServerSideValue);
sb.Append("};");
sb.Append("</script>");

Page.ClientScript.RegisterClientScriptBlock("genScript", sb.ToString());

或者将值放在页面上的隐藏表单元素中,并从客户端Javascript访问它。

<!-- In the Markup -->
<asp:HtmlInputHidden id="hiddenField" runat="server" />

// And in the code-behind
hiddenField.Value = importantServerSideValue;

答案 2 :(得分:0)

当我必须将变量值从PHP传递给JS时,我使用php来回显js,并将变量设置为php变量的值。 e.g。

//php code
echo 'var number = ' . $variable . ';';