2

我需要阅读 javascript 中的配置文件设置。我在我的 aspx 页面中编写了以下代码。它返回空。

<script type="text/javascript" language="javascript">

function GetFileLocationFromConfig(keyP) {

 var FileLocationL = '<%=ConfigurationManager.AppSettings[' + keyP+ '] %>';

 return FileLocationL;
            }
 </script>
4

2 回答 2

3

您将服务器端与客户端混淆了。

页面在服务端进行处理,并<% ... %>用服务端计算的结果替换内容,然后将生成的页面发送给客户端。

计算的部分页面可以是 Javascript 代码,但您必须了解并辨别在客户端用 Javascript 进行哪些计算,以及由 ASP 在服务器上进行哪些计算。

在您的特定情况下,解决方案将编写生成 Javascript“字典”对象的 ASP 代码,例如生成类似

 var settings = {};
 settings["!key1"] = "value1";
 settings["!key2"] = "value2";
 settings["!key3"] = "value3";

那么查找功能可以在Javascript中实现为

 function getSettingsValue(key) {
     return settings["!" + key];
 }

通过检查生成的页面,小心了解和了解您发送给客户端的确切内容。例如,向客户端发送密码或其他安全相关信息将是一个坏主意。

于 2013-06-14T05:36:40.143 回答
0

您不能将 javascript 变量传递给 PHP、ASP 变量/方法。

你可以这样做:

<?php

$arr = implode(",", ConfigurationManager.AppSettings);

?>

var s = '<?php echo $arr; ?>';
s = s.split(',');
var FileLocationL = s[ keyP ];
于 2013-06-14T05:30:23.487 回答