2010-01-07 127 views
2

我已经搜索了这个网页寻找答案,但似乎这次我不那么幸运,所以我不得不问。我很抱歉,如果它已经回答(找不到它)。是的,英语不是我的第一语言,所以我也为我的拼写错误表示歉意,我尽我所能。JavaScript SRC路径不能正常工作

这是我的问题,使用Tomcat 5.5,Struts 1.3,JRE 1.5和我使用的是Firefox 3.5.6。 在我的jsp页面中,我似乎无法把src="path/path"放入我的<script>我试过删除src并且一切正常,但我的项目需要大量的jQuery使用,而且我不想复制/粘贴所有的js文件在每个jsp中。

这是我的代码:

<script type="text/javascript" src="js/jquery-1.3.2.js"> 
    function showMySelf(){ 
     alert("Hello World!");  
    } 
(... plus other stuff code that actually uses jquery functions) 
</script> 

,并提交按钮:

<input type="submit" onclick="showMySelf()"> 

当我按一下按钮,没有任何反应(以及它实际上重绘页),当我删除了“ src“标记并将所有jquery代码添加到页面中,这一切都很好。

我曾尝试在路径中添加另一个斜杠作为“/js/jquery-1.3.2.js”并返回一个错误。

我试过使用ResolveURL,它似乎没有给我更好的结果。

我也尝试将js文件更改为另一个文件(“generics.js”和“js.js”),我也尝试使用“js/*。js”。

任何这些解决方案都存档任何东西。

我也试过使用struts标签(如html:submit),但它也没有工作。

该路径实际上是正确的,因为在我的Web浏览器中查看代码给了我一个链接到js文件。所以我suposse浏览器知道要查找我的js文件,它不会给我一个错误或一个断开的链接到文件。

为什么会发生这种情况的任何想法?

谢谢大家。

随机。

回答

5

您不能使用script元素加载外部文件,并在同一时间将代码放在其中。您需要使用两个script元素:

<script type="text/javascript" src="js/jquery-1.3.2.js"></script> 
<script type="text/javascript"> 
    function showMySelf(){ 
     alert("Hello World!");  
    } 
(... plus other stuff code that actually uses jquery functions) 
</script> 
+0

先生,发现+1。 – 2010-01-07 12:27:38

+0

这工作。谢谢! 我早些时候尝试过这个解决方案,但是我用/>而不是> Random 2010-01-07 12:43:09

2

我想Gumbo解决了它。

作为一个旁注,查找浏览器是否可以加载JS文件的一个非常好的方法是Firefox中Firebug的“Net标签”。它显示全部当前页面的加载(和失败)请求。

1

两个最可能的选项是:

a)您是包括HTML在您的JS文件(即<script>标签)

把它拿出来。

b)你有错误的URI,当你试图解决您的相对URI手动你在你的服务器访问日志,这样做不正确

看看,看看实际上正在请求什么(或使用工具(如Firebug) )