3

我想运行 Ajax 调用,但由于我的 htaccess 重写规则,我在定位 script.php 文件时遇到问题。我在同一个文件夹中有一个 index.php、script.php 和 .htaccess。在 htaccess 中,有一个 RewriteRule 将这样的 URL 格式化为“domain.com/index.php?bla=123”到这个“domain.com/123”。

但是,我的 javascript 无法找到 PHP 脚本,因为当 URL 变为“domain.com/asdf/”时路径设置为“script.php”。知道如何从 js 运行脚本,无论是通过根目录还是 FAKE 目录。

url: "script.php" || "../script.php",
4

2 回答 2

1

您可以使用内联条件,例如以下示例:

url: (4 > 2 ? "script.php" : "../script.php"),

在此示例中,您将始终以 url "script.php" 结尾,因此将4 > 2条件更改为您自己的需要

于 2013-01-30T18:36:37.040 回答
0

根据对您的情况的进一步解释,您应该可以将其"/script.php"用作 ajax 调用的路径。在 javascript 中,以 开头的路径/会将您带到服务器的根目录;因此,无论当前页面位于何处,您都可以从那里继续并找到您的脚本文件。

如果由于某种原因这不起作用,您可以使用window.location.hostname以下方式获取服务器的路径:

var scriptUrl = window.location.hostname + "/script.php";

编辑:

根据您的评论,您的路径必须是您的/something/script.php,而不仅仅是/script.php两种可能的解决方案。

于 2013-01-31T13:59:57.107 回答