ram*_*ram 30 javascript asp.net web-config
有没有办法,我可以用javascript读取web.config中的配置值?我为什么要那样做?
我的网站上有一个计时器,如果用户处于非活动状态20分钟,它会弹出一个带倒计时器的模态对话框(倒计时2分钟).如果用户没有回应,则会将其记录下来.如果他这样做,它会ping到服务器(以维持会话)并使会话保持活动状态
这15分钟是在js文件中硬编码的.我宁愿想从配置文件/其他文件中获取它,而不是将其硬编码到JS中
这是代码片段
$.fn.idleTimeout = function(options) {
var defaults = {
//I would like to pick these values from some config file
inactivity: 900000, //15 minutes
noconfirm: 120000, //2 minutes
sessionAlive: 900000, //15 minutes
click_reset: true,
logout_url: '/Views/Pages/Timeout.aspx'
}
Run Code Online (Sandbox Code Playgroud)
有什么建议?
编辑:这是一个单独的js文件.执行<%=%>会出现错误"非法XML字符[中断此错误]不活动:<%= ConfigurationManager.AppSettings ["Inactivity"]%>;"
Dan*_*llo 54
您可以从ASP.NET生成JavaScript.
然后只需将服务器端的设置写入您的var defaults喜欢:
var defaults = {
inactivity: <%=ConfigurationManager.AppSettings["Inactivity"] %>
}
Run Code Online (Sandbox Code Playgroud)
编辑:
如果您想将JavaScript保存在静态js文件中,您仍然可以var defaults从<script>ASP.NET应用程序渲染的小型文件初始化.您的设置将是全局的,就像在AppSettings中web.config.
Jar*_*yer 15
将它们作为变量从视图中传递出去.
<script type="text/javascript">
// needs to reside in your *.aspx file.
$(function() {
initPage(<%= Settings.Default.Inactivity %>, <%= Settings.Default.NoConfirm %>, <%= Settings.Default.LogoutUrl %>)
});
// Can reside in your *.aspx or in a *.js file.
function initPage(inactivity, noconfirm, logoutUrl) {
$.fn.idleTimeout = function(options) {
inactivity: inactivity,
noconfirm: noconfirm,
logout_url: logoutUrl
};
};
</script>
Run Code Online (Sandbox Code Playgroud)
重复你所拥有的多个变量.
从单独的静态JS文件直接访问配置文件是不可能的.执行此操作的一种方法是在.aspx页面中添加java脚本.
我的网站配置:
<appSettings>
<add key="test" value="textBox"/>
</appSettings>
Run Code Online (Sandbox Code Playgroud)
我的aspx页面

我们在全局设置这个变量,所以我们可以在静态js文件my js file home.js中访问这个变量
function ReadConfigSettings()
{
alert( test);
}
Run Code Online (Sandbox Code Playgroud)
所以我们可以通过这种方式从javascript中读取web配置值.
在将值放在配置文件之后,在您将使用该值的页面上将java脚本放入以下方式:您将在java脚本中作为全局访问该值,不必声明它.
在网络配置:
</appSettings>
<add key="varName" value="1" />
</appSettings>
Run Code Online (Sandbox Code Playgroud)
在html页面上:
<script>
var varName= '@System.Configuration.ConfigurationManager.AppSettings["varName"]';
</script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
84576 次 |
| 最近记录: |