2013-08-01 72 views
0

我有這個奇怪的URL使用html href屬性的問題。順便說一下,我正在使用laravel。 我給你舉個例子,讓我們說我有這樣的代碼在我的網站 <a href="link1"></a>和我目前的網址是localhost/example/example 而不是增加鏈接到我的地址,這樣localhost/example/example/link1它只是增加了它這樣localhost/example/link1基本上它刪除去一個鏈接回到一個href和url問題

我嘗試使用<a href"/link1"></a>代替,但它只是消除這樣localhost/link1

我試圖尋找出了什麼問題,但我找不到任何所有的路徑。我很強硬,也許它必須使用.htaccess或laravel urls做些事情,但我不知道如何解決這個問題(或者它可能需要使用Apache)。我只是需要它會正常添加鏈接到URL。

另外我不能使用laravel URL :: request,因爲我使用JavaScript來生成動態內容。

謝謝

+0

你有一個基礎URL在HTML設置?這會產生這種效果。 – Brilliand

回答

1

http://localhost/是你的域名。

如果你在http://localhost/example/<a href="link1">,應該指向your domain + link1

如果你的應用是在/例子/,我建議你看看一個基本標籤:

http://www.htmlquick.com/reference/tags/base.html

因此,假設您有以下基本標籤,因爲您的應用程序位於/ example /中:

<base href="http://localhost/example/">

這將使http://localhost/example/,您的鏈接和形式的基礎。

<a href="link1">將打開http://localhost/example/link1

<form method="post" action="link2">將張貼到http://localhost/example/link2

看一看鏈接在HTML中是如何工作的: http://www.w3.org/TR/REC-html40/struct/links.html

0

嘗試使用

網址::到( 'someseg/otherseg')

+0

我說我不能使用URL :: to,因爲我使用JavaScript生成大陸我不能使用php,只有JavaScript或HTML。 – Andrius

+3

然後,也許這個問題應該被標記爲JavaScript而不是PHP ... – Brilliand

0

此行爲是由HTML頁面中的headbase元件來控制。您可以使用JavaScript檢索此值(document.getElementsByTagName("base")[0].href)。如果您還檢索頁面網址的相關部分(window.location.pathname),則可以使用這兩個值執行操作,將鏈接更改爲表現您的期望。

簡單地將鏈接改爲絕對,前置window.location.pathname + "/"就可以了。