在JQuery中,当'load'方法引用项目中的html文件时,它的相对路径是从哪里开始的?

时间:2012-07-22 21:38:09

标签: javascript jquery

我有一个使用大量html,javascript,java等的Java EE项目。我希望使用JQuery将html模板加载到div标签中但是我不确定加载的相对路径在哪里方法从。开始。

我正在尝试加载的html文件位于项目中,但位于不同的目录中。我是否必须退缩并重新回到路上?如果有一种简单的方法可以通过某种类型的调试方法找出正确的路径....那将是奖励!它使用的javascript(JQuery)被加载,下面的行也在另一个文件中。我有类似以下的内容

$("<div id=\"eventMaintDialog\"></div>").appendTo($("body"));
$("eventMaintDialog").load("src\main\webapp\resources\js\template\Event\EventMaintTemplate.html");

我希望我能清楚地解释清楚。我觉得我一直在改变这条路,却一无所获。我在黑暗中刺伤。提前谢谢。

2 个答案:

答案 0 :(得分:3)

Javascript在浏览器中运行,它不了解您的Java EE项目。

您可以打开浏览器控制台并在页面上将其写入以查看:

var resolved = $("<a>", {href: "src\main\webapp\resources\js\template\Event\EventMaintTemplate.html"}).prop( "href" );

resolved; //The absolute url 
//"http://stackoverflow.com/questions/11604170/srcmainwebappesourcesjsemplateEventEventMaintTemplate.html"

这取决于您运行代码的网页网址。

请注意,"\"是javascript字符串中的转义字符。您可能想要"/"

答案 1 :(得分:0)

您可以通过斜杠来指定绝对网址。

$("eventMaintDialog").load("\src\main\webapp\resources\js\template\Event\EventMainTemplate.html");

将参考http:// www。[yourwebsite] .com / src / main / webapp / resources / js / template / Event / EventMainTemplate.html

这给我带来了很多麻烦