繁体   English   中英

如何在JavaScript中获取服务器端变量

[英]How to get a server-side variable into JavaScript

我想从数据库(使用asp.net(C#)中的datareader)将值传递给此JavaScript。

该脚本来自http://www.dynamicdrive.com/dynamicindex14/leftrightslide.htm

我需要在下面的行中设置通过值:

leftrightslide[cnt] = '<a href="MYWEBPAGE"><img src="MYIMAGE FRM DATABASE.gif" border=1></a>';
cnt++;

因此,数据读取器的值将传递到JavaScript数组中。

请参阅以下内容:
http://www.velocityreviews.com/forums/t76971-populating-javascript-array-from-vb-net.html
使用datareader在服务器端创建字符串并进行注册。

要么

从服务器端使用RegisterArrayDeclaration(arrayName,arrayValue)。 参见以下内容:
http://msdn.microsoft.com/en-us/library/aa479302.aspx

您可以使用网络服务

您必须使用脚本管理器http://msdn.microsoft.com/en-us/library/system.web.ui.page.clientscript.aspx来执行此操作。 检查链接会有所帮助。

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  public void Page_Load(Object sender, EventArgs e)
  {
    // Define the name and type of the client scripts on the page.
    String csname1 = "PopupScript";
    Type cstype = this.GetType();

    // Get a ClientScriptManager reference from the Page class.
    ClientScriptManager cs = Page.ClientScript;

    // Check to see if the startup script is already registered.
    if (!cs.IsStartupScriptRegistered(cstype, csname1))
    {
        StringBuilder cstext1 = new StringBuilder();
        cstext1.Append("<script type=text/javascript> alert('Hello World!') </");
        cstext1.Append("script>");

        cs.RegisterStartupScript(cstype, csname1, cstext1.ToString());
    }
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>RegisterStartupScript</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    </div>
    </form>
</body>
</html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM