菜鸟是怎么练成的(一)

来源:互联网 发布:华工 美国人 知乎 编辑:程序博客网 时间:2024/05/01 00:28

本文知识产权归karman所有,首发于博客中国(http://www.blogcn.com/blog/trackback.asp?mydiary=26266725),在CSDN作同步更新。如需转载,请保留本段文字,并发邮件通知:zhangmeng@sina.com

 

首次写BS的东西就碰到一个问题:
C#写的后台,从数据库中取得一组服务器地址,保存在数组里面
前台页面中所包含的ocx控件需要用这组服务器地址初始化

后台的数组怎么传到前台来啊~~~迷惑中....

查了半天,终于得知:后台的数组前台无法直接访问 -__-#

怎么办?想办法呗.....真想出来了一个办法,不需要把数组组合成字符串再传给前台,而是前台直接获得javascript可以使用的数组!

下面是示例:
在Page_Load()的过程中将数组输出到页面中
int ContentServerCount = 10;
string ServerNameString = "<script language=/"JavaScript/">var ServerNameArray = new Array(" + ContentServerCount.ToString() + ");";

for( int i = 0; i < ContentServerCount; i++ )
{  
    MetaBCInst.GetSysParams( "FC_FTP_SERVER_NAME", i, out tempString );
    ServerNameString += "ServerNameArray [" + i + "]=" + tempString + ";";
}

ServerNameString = ServerNameString + "";
Response.Write(ServerNameString);

这样一来,在页面最开始的地方将会生成js的脚本,该脚本定义了ServerNameArray数组,可以被js直接使用哦。

顺便提一句,如果在页面生存期内,服务器端数据不会改变,而客户端需要使用这些数据的话,都可以使用这种方法,将服务器数据直接生成到HTML页面中。

本文知识产权归karman所有,首发于博客中国(http://www.blogcn.com/blog/trackback.asp?mydiary=26266725),在CSDN作同步更新。如需转载,请保留本段文字,并发邮件通知:zhangmeng@sina.com

原创粉丝点击