Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 动态编辑href属性_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript 动态编辑href属性

Javascript 动态编辑href属性,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我不在乎它是什么语言,但我希望这是自动完成的。 我在我的网站上有几个链接链接到同一个地方。 例如,在index.php上,我有一个主页按钮链接href=“index.php” 但是,当我现在在downloads/download.php中时,我需要手动将位置调整为href=“../index.php” 有没有一种方法可以动态地做到这一点?考虑到我正在为整个顶部导航栏使用include函数,这真的很糟糕,而且我无法真正使其动态化。 我实现这一目标的理想语言是: PHP>JavaScript=jQu

我不在乎它是什么语言,但我希望这是自动完成的。 我在我的网站上有几个链接链接到同一个地方。 例如,在index.php上,我有一个主页按钮链接href=“index.php” 但是,当我现在在downloads/download.php中时,我需要手动将位置调整为href=“../index.php”

有没有一种方法可以动态地做到这一点?考虑到我正在为整个顶部导航栏使用include函数,这真的很糟糕,而且我无法真正使其动态化。 我实现这一目标的理想语言是: PHP>JavaScript=jQuery>AJAX


只要效率更高!谢谢大家! 不要使用本地目录,而是使用URL。因此,您可以放置
http://example.com/index.php
作为所有这些的
href
属性

您还可以使用超级全局
$\u服务器
检索基本URL

function getHomeURL() {
    return $_SERVER[ "HTTP_ORIGIN" ];
}
这样,您可以在需要放置href属性时调用该函数

<a href="<?php echo getHomeURL(); ?>">Home</a>

我希望这有帮助。

使用相对URL: 不要链接到../index.php,而是链接到:/ 其他链接也可以是相对的,比如:/downloads/download.php

顺便说一句,如果使用下载子目录,为什么不在那里设置index.php呢?
您不需要链接到索引文件,只需链接到它们的包含文件夹。

另一种方法是通过开关()将所有内容整齐地保存在一个位置,但可能不是最直接的方法

创建一个index.php文件,该文件如下所示:

<?php
include 'navbar.php';
$pagelink = $_GET['link'];
switch($pagelink)
{
    case 'home';
        $link = "home.php";
        break;
    case 'download';
        $link = "download/downloads.php";
        break;
    case 'about';
        $link = "about/about.php";
        break;
    case 'contact';
        $link = "contact/contact_us.php";
        break;
    case 'this';
        $link = "something/else/in/a/different/folder/this.php";
        break;
}
include $link;
include 'footer.php';
?>
<a href="index.php?link=download" title="Downloads" target="_self">Downloads</a>

然后,您所要做的就是制定所有链接,如下所示:

<?php
include 'navbar.php';
$pagelink = $_GET['link'];
switch($pagelink)
{
    case 'home';
        $link = "home.php";
        break;
    case 'download';
        $link = "download/downloads.php";
        break;
    case 'about';
        $link = "about/about.php";
        break;
    case 'contact';
        $link = "contact/contact_us.php";
        break;
    case 'this';
        $link = "something/else/in/a/different/folder/this.php";
        break;
}
include $link;
include 'footer.php';
?>
<a href="index.php?link=download" title="Downloads" target="_self">Downloads</a>


你永远不会离开你的索引页面,在索引页面中加载(包括)每一个页面,无论它位于何处。

是的,你绝对应该使用PHP。如果没有客户端脚本(就像大多数爬虫程序一样),链接只会出现断开。顺便说一句,“AJAX”不是一种语言,而是一个流行语…:-)也许您需要在链接中设置完整的url,您可以使用$\u全局服务器来实现这一点@Bergi我对PHP几乎没有经验,你会怎么做?我可能不理解你的问题,但是标签呢?这需要基本标签吗?或者我可以做,不带标签?还有,谢谢你的第二部分!我不知道@如果您只是像这样链接:,您可以使用/从根开始。或者您可以使用:blah/foo.php这将在当前文件夹中找到blah文件夹。这可能是一个问题,如果他想使用头命令(比如下载页面的文件附件)。当然,他也可以在头文件中执行一些选择性操作:-)