如何链接到ColdFusion 10中站点文件夹上方的JavaScript文件?

如何链接到ColdFusion 10中站点文件夹上方的JavaScript文件?,javascript,coldfusion,coldfusion-10,Javascript,Coldfusion,Coldfusion 10,问题就在这里。我工作的公司有很多网站,其中很多都使用相同的jQueryUI小部件,比如datepicker。我真的希望在服务器顶层的一个javascript文件夹中有每个小部件的一个副本。问题是,因为代码在站点文件夹之外,所以我需要使用ColdFusion映射来指向它。显然,您不能将这些与脚本或链接标记一起使用。它不会展开映射。因此,我尝试使用“ExpandPath”,并收到一条消息,表示它没有访问该资源的权限。一些研究表明,JavaScript无法访问本地文件系统上的文件,因为这将是一个安全漏

问题就在这里。我工作的公司有很多网站,其中很多都使用相同的jQueryUI小部件,比如datepicker。我真的希望在服务器顶层的一个javascript文件夹中有每个小部件的一个副本。问题是,因为代码在站点文件夹之外,所以我需要使用ColdFusion映射来指向它。显然,您不能将这些与脚本或链接标记一起使用。它不会展开映射。因此,我尝试使用“ExpandPath”,并收到一条消息,表示它没有访问该资源的权限。一些研究表明,JavaScript无法访问本地文件系统上的文件,因为这将是一个安全漏洞。因此,尽管它很难看,我还是尝试将CSS文件包装在标签中,将JS文件包装在标签中,然后将它们包含在cfinclude中。这有点奏效了。主要的问题是css显然使用相对链接来链接所使用的图像,而这些链接都被破坏了,因为JS包含在脚本和图像本身的另一个文件夹中的页面上


这是我的问题。这里有什么好办法吗?我不认为我想做的是不合理的,但我应该放弃,在每个站点文件夹中保留一份小部件的副本吗?提前感谢您的帮助。

包含的javascript文件,如CSS文件,不必被ColdFusion处理器触摸。您只需使用ColdFusion创建链接并将其提供给浏览器,就像您创建任何图像、附件或其他站点的链接一样。唯一的区别是这个链接是在一个
中,我的情况是我们所有的ColdFusion工作都是内部网。虽然我们只有几个网站,但这不止一个。我们还使用开发服务器,而不是让人们在硬盘上开发

我们做的第一件事是在“/”上创建一个映射,指向某个目录。假设是c:\fred。在c:\fred中,我们有名为images、css、js、udf等的子目录,允许我们执行以下操作:

<cfinclude template = "/Templates/Reportheader.cfm">
<link rel= "stylesheet" type= "text/css" href= "/css/cashflow.css" title= "style1">
<script type="text/javascript" src="/JS/browserDetect.js" ></script>


在任何应用程序中。

这看起来可以解决我的问题,谢谢!我以前不熟悉虚拟目录。我查看了如何操作,似乎您需要直接访问服务器上的ColdFusion文件夹。由于我没有访问权限,需要让我们的技术人员在他们有时间的时候为我创建目录,那么是否需要从CF Admin设置虚拟目录?(看起来不像)如果你想使用虚拟目录,请询问那些可以设置虚拟目录的人。如果需要一段时间,这是值得的。“直接访问服务器上的ColdFusion文件夹。”不,ColdFusion真的与此无关。您可以卸载ColdFusion,您的web服务器仍然能够提供javascript。web服务器(IIS/Apache/等)进程需要访问包含javascript文件的服务器上的物理目录。你是对的,技术人员可能会为你设置。谢谢你的回答,丹,但是除非我遗漏了什么,否则这看起来和我已经尝试过的没有什么不同。设置到JS文件夹的映射无效。我发现您可以将映射与cfinclude一起使用,但不能使用脚本或链接。您发现您不能,但我可以。您可能遗漏的是,我们将“/”映射到单个字符,并且没有尝试扩展路径。感谢您的回复,但是将“/”映射到其他位置对我们不起作用,因为我们仍然需要“/”来指向我们站点的实际根。