JavaScript相对AJAX调用路径
我有一个包含PHP和JavaScript文件的脚本。 所有这些文件都在根文件夹JavaScript相对AJAX调用路径,javascript,relative-path,include-path,Javascript,Relative Path,Include Path,我有一个包含PHP和JavaScript文件的脚本。 所有这些文件都在根文件夹/myfolder中 假设我的网站上必须包含的脚本是/myfolder/script.js,问题是在script.js中,我对。/myfolder/ajax.php进行了ajax调用,因为路径将与包含脚本的页面相关,如果在页面上有类似的内容,则脚本将无法工作/a/b/page.php: 在像http://www.example.com/ajax: getContextPath() + 'myfolder/ajax.
/myfolder
中
假设我的网站上必须包含的脚本是/myfolder/script.js
,问题是在script.js
中,我对。/myfolder/ajax.php
进行了ajax调用,因为路径将与包含脚本的页面相关,如果在页面上有类似的内容,则脚本将无法工作/a/b/page.php
:
在像http://www.example.com/ajax
:
getContextPath() + 'myfolder/ajax.php'
将返回/ajax/myfolder/ajax.php
类似地,在像http://www.example.com/
:
getContextPath() + 'myfolder/ajax.php'
将返回/myfolder/ajax.php
最后是像http://www.example.com/myfolder/a/b/c/d/e/f/g/
:
getContextPath() + 'myfolder/ajax.php'
将返回/myfolder/ajax.php
为什么不调用ajax.php
?这将调用/a/b/ajax.php
,这不是正确的路径。能否提供文件夹/文件结构的简单图形表示?试图以文本形式理解这一点让我头疼。@MCL,当然,这也让我困惑。完成。如果任何页面都包含script.js,这应该可以工作。php.Yes,但我需要它返回。/myfolder/ajax.php
。因此,在任何情况下,脚本都必须返回根文件夹中的/myfolder
的相对路径。如果当前页面URL的深度为3(有3个父文件夹),则AJAX调用应执行到。/../../../myfolder.php
。它不需要是相对的,只需在您调用的URL前面指定/
;它从web地址的根目录运行,因此如果您在www.example.com上调用/ajax/ajax.php
,将调用的url是www.example.com/ajax/ajax.phpmyfolder.php
从不更改位置,因此它始终具有相同的url,我们正在用函数建立绝对url,这样我就可以在script.js
中将AJAX调用url替换为/myfolder/AJAX.php
?是的,如果您的站点总是在根上下文中运行,如果您的应用位于/MyApp/
,那么您需要该函数
getContextPath() + 'myfolder/ajax.php'
getContextPath() + 'myfolder/ajax.php'