我想在一個頁面上創建超級鏈接到其根文件夾中的某些文件。根據文件夾內容創建超鏈接
因此,例如:
\Homepage.html
- 這將包含的鏈接:
\1.html
\2.html
\3.html
etc.
我可以簡單地手動做到這一點,但我想的過程,文件的數量自動(1, 2,3 ...)會增加。
的JavaScript可以做到這一點?如果是這樣,怎麼樣?
我想在一個頁面上創建超級鏈接到其根文件夾中的某些文件。根據文件夾內容創建超鏈接
因此,例如:
\Homepage.html
- 這將包含的鏈接:
\1.html
\2.html
\3.html
etc.
我可以簡單地手動做到這一點,但我想的過程,文件的數量自動(1, 2,3 ...)會增加。
的JavaScript可以做到這一點?如果是這樣,怎麼樣?
我收到你對使用JavaScript的印象,因爲你可能不知道如何去做。如果我不正確,那麼我的道歉。這就是說......
正如其他人所指出的,JS無法單獨做到這一點。您將需要一個服務器組件(如PHP)來讀取目錄以獲取其文件。從這一點你有很多選擇。我的建議是,忘記JS,除非你有一些要求使用它。只需使用DHTML,這是PHP的基本人才。調用這個文件類似main.php
:
<html>
<body>
<?php
// Read directory, spit out links
if ($handle = opendir('.')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
echo '<a href="/'.$entry.'">Link to file '.$entry.'</a><br>';
}
}
closedir($handle);
}
?>
</body>
</html>
或多或少直接從PHP readdir docs採取上面的例子。根據您的示例文件名,訪問main.php
在瀏覽器中這應該輸出類似:
Link to file 1.html
Link to file 2.html
Link to file 3.html
...
您可能需要調整href
值以反映路徑到HTML文件,相對於你的根文件夾。
乾杯
JavaScript不能這樣做。您可以設置一個返回文件夾內容的JSON的PHP(或其他服務器端腳本),因爲服務器端語言DO可以訪問它,然後使用AJAX調用該腳本。
你需要把一個HTML元素在頁面中與ID:
<div id="foo"></div>
然後,使用JavaScript,
for (var i = 1 ; i <= 10 ; i++) {
document.getElementById("foo").innerHTML += "<a href=\"" + i + ".html\">Link " + i + "</a>";
}
轉義引號(\「)是很重要的 - 搞砸他們可能會導致意想不到的結果。
編輯我仔細閱讀你的問題,並意識到你需要它增加,因爲你添加更多的文件秒。在這種情況下,您可以使用PHP來生成JavaScript頁面上,即
for (var i = 1 ; i <= <?php echo $maxFileIndex; ?> ; i++) {
document.getElementById("foo").innerHTML += "<a href=\"" + i + ".html\">Link " + i + "</a>";
}
,或者你可以做一個AJAX請求到服務器並填充基於響應的div
。
一個可能的解決辦法:
要在Windows(非Unicode)的下表: DIR * .EXE/B/S/OG 如果你想將內容保存到一個文件 DIR * .EXE/B/S/OG> contentList .txt
JavaScript本身不能不通過使用AJAX,你可以。 – j08691 2013-04-25 21:48:52
這裏有很多建議使用AJAX等等。爲什麼要使用JavaScript *?使用PHP讀取目錄並將鏈接寫爲動態HTML。完成。 – Madbreaks 2013-04-25 21:56:47