如何将值从 web.config 传递到外部 js 文件?

How to pass value from web.config to external js file?

我有web.config个文件

 <appSettings>
    <add key="interval" value="100"/>
  </appSettings>

我正在尝试将值“100”传递到我的文件夹脚本中的 js 文件以更改幻灯片的间隔。 这是我的 js 文件

   $(function () {


    $("#slideshow > div:gt(0)").hide();

    setInterval(function () {
        $('#slideshow >div:first')
          .slideToggle(500)
          //.fadeOut(1000)
          .next()
          //.fadeIn(1000)
          .slideToggle(500)
          .end()
          .appendTo('#slideshow');
    }, interval); <-- here

});

您必须读取服务器端的值。您可以在控制器中执行此操作并将其存储在 viewbag 中:

ViewBag.SlideShowInterval = ConfigurationManager.AppSettings["SlideShowInterval"];

然后在您的视图中,确保它在 呈现您显示的代码的 @Scripts.Render() 之前呈现,例如使用默认附带的脚本部分MVC 布局:

@section scripts
{
    var slideShowInterval = '@ViewBag.SlideShowInterval';
}

然后更改您的脚本文件,为变量指定一个更有意义的名称:

setInterval(function () {
    // ...
}, slideShowInterval);