【问题标题】:ASP.NET, combining conditionally included script filesASP.NET,组合有条件包含的脚本文件
【发布时间】:2010-02-01 09:55:50
【问题描述】:

我们正在开发一个使用 jQuery 作为客户端脚本基础的 ASP.NET CMS 项目。

jquery-1.2.6.js 文件是唯一始终包含的脚本文件。当前包含其他脚本文件,具体取决于 CMS 编辑器在页面或页面模板上使用的组件。

许多脚本组合器都会生成静态脚本。如果我们采用这种方法,我们将不得不添加所有可能的脚本文件以防万一。我们目前没有使用任何 ASP.NET Ajax 扩展,所以还没有研究可能会给我们带来什么。

有人有什么建议吗?

我已阅读Combining and Caching multiple JavaScript files in ASP.net,但我认为这并不能掩盖我们情况的条件性质

太好了,我可以在基本母版页上使用 ScriptManagerProxies 和一些方法。然而,还有另一件事。停止向客户端发送所有 ASP.NEt Ajax 废话。在 ASP.NEt 4.0 发布之前,我将看看 bleroy 的 hack

TIA

帕特龙

【问题讨论】:

    标签: asp.net javascript


    【解决方案1】:

    在 Sitecore 中工作的网站上有多个用于不同页面的脚本,我们在 Sitecore 中创建了一个脚本项目列表,然后向项目添加了一个 Multlilist 字段。我们在母版页的头部有一个占位符,并在脚本出现在多列表字段中时动态添加它们。我们也对 CSS 做了同样的事情。结果很好。 (具体来说是http://www.utulsa.edu

    编辑:我误解了你最初的意思。看起来您可能需要组合并生成您需要的所有可能的静态脚本,然后动态地包含您正在寻找的那个,如果您正在寻找每个页面只包含一个脚本。

    否则,您可以仅依靠缓存来降低脚本请求,并执行您当前正在执行的操作

    编辑 2:第三个想法是您可以编写自己的组合器,该组合器将按需组合脚本,并包含生成(或预生成)的脚本

    【讨论】:

    • 我不知道 Sitecore,但我认为我们所拥有的差不多。问题是这不会导致您的脚本文件合并到一个文件中。我们想要的正是这种“结合”
    【解决方案2】:

    我不知道这是否对你有帮助,但 Scott Hanselman 在 Twitter 上发帖说你可以download issues of MSDN Magazine for free。我在这个月(2010 年 2 月)点击了该链接并浏览了几个问题,其中第一篇文章讨论了使用 jQuery 和 ASP.NET Ajax 进行预测获取。

    这看起来可能与您正在寻找的内容相符。至于停止 AJAX 请求,我还没有阅读整篇文章,但我认为其中提到了一些内容(因为预测获取必须考虑到这一点)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-22
      • 2015-07-21
      • 1970-01-01
      • 1970-01-01
      • 2020-12-29
      • 1970-01-01
      • 1970-01-01
      • 2018-03-29
      相关资源
      最近更新 更多