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

Pra*_*air 6 c# asp.net

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

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

Rob*_*Rob 9

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

在.aspx文件中:

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

  // For example:

  alert(stringValue);
</sctipt>
Run Code Online (Sandbox Code Playgroud)

在.aspx.cs文件中:

private string GetStringValue()
{
  return "A string value";
}
Run Code Online (Sandbox Code Playgroud)

然后,这将在页面加载时显示一个javascript消息框,说"字符串值"


Jus*_*ner 2

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

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());
Run Code Online (Sandbox Code Playgroud)

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

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

// And in the code-behind
hiddenField.Value = importantServerSideValue;
Run Code Online (Sandbox Code Playgroud)