|
Тема
|
Линк с име от текстово поле
|
|
Автор |
БM21 (непознат
) |
Публикувано | 03.06.11 09:43 |
|
Здравейте!
Искам да въведа име на файл в едно текстово поле и като натисна бутон submit, да зареди файла, чието име е записано. Ако да кажем текстовото поле е с име file_name, как може да се вмъкне това име и да се използва в линка към страницата? Става дума, че ще се пише само името, а останалота - в коя папка е и .HTML ще бъде твърдо зададено.
Т.е. линка към страницата, която ще се покаже да е нещо от вида
/workfolder/"file_name".HTML
file_name e името на текстовото поле, където съм въвел нещо, преди да натисна бутона.
| |
Тема
|
Re: Линк с име от текстово поле
[re: БM21]
|
|
Автор |
Бokop (Христо) |
Публикувано | 03.06.11 17:10 |
|
Да беше казал и на какво трябва да стане това. Client side, server side?
Господ ще ми прости греховете. Това му е работата.
| |
Тема
|
Re: Линк с име от текстово поле
[re: Бokop]
|
|
Автор |
БM21 (непознат
) |
Публикувано | 03.06.11 17:55 |
|
Client side
| |
Тема
|
Re: Линк с име от текстово поле
[re: БM21]
|
|
Автор |
edembg (Ученик) |
Публикувано | 04.06.11 09:01 |
|
Не мисля, че може да се довериш на потребител да напише вярно име на файл. Според мен е по-добре да направиш dropdown със списък на достъпните функции, като в HTML-а не пишеш истинските имена на файловете. На сървъра ще декодираш подадената информация и ще заредиш нужния файл.
Иначе представи си, че напиша "ала бала". Как ще реагира тоя скрипт?
И най-ярките личности си плащат тока.
| |
Тема
|
Re: Линк с име от текстово поле
[re: edembg]
|
|
Автор |
БM21 (непознат
) |
Публикувано | 04.06.11 12:55 |
|
Ще реагира така, както и ако е имало съответния файл, а после някой го е изтрил. Това не е проблем и не е необходимо да се обработват грешките.
Трябва ли за такова нещо да се използва JS? Само HTML няма ли да свърши работа? Идеята е дори да не се използва сървър, а да се отвори един HTML файл, от който след това да има линкове към други - както някои си правят например справочниците за потребителите.
По принцип няма да ме интересува, дали ще се напише вярно име на файл или "ала бала". Ако ще да напише и "алаб ала" - все тая.
Важното е, ако напише вярно име на фаил, да го зареди браузъра. Не си мислете че ще се правят някакви сложни неща.
| |
Тема
|
Добре.
[re: БM21]
|
|
Автор |
Бokop (Христо) |
Публикувано | 04.06.11 14:08 |
|
И как да стане? Пише името на файла в текствотото поле, клика на някъв бутон и се появява линка до текстовото поле или клика и файла просто се отваря в браузера.
Господ ще ми прости греховете. Това му е работата.
| |
|
index.html:
<html>
<head>
<title>Отваряне на файл</title>
<script type="text/javascript">
function openFile() {
var fileName = document.getElementById("FileName").value;
location.href = "./htmlfiles/"+fileName+".html";
}
</script>
</head>
<body>
<form>
Име на файла: <input type="text" id="FileName" value=""> <input type="button" value="Сезам отвори се" onclick="javascript:openFile();">
</form>
</body>
</html>
kurac.html:
<html>
<head>
<title>kurac.html</title>
</head>
<body>
Този файл се казва kurac.html и се намира в директория htmlfiles.
</body>
</html>
pizdac.html:
<html>
<head>
<title>pizdac.html</title>
</head>
<body>
Този файл се казва pizdac.html и се намира в директория htmlfiles.
</body>
</html>
Запиши горните файлове и в директорията, в която се намира index.html направи директория с име htmlfiles и в нея сложи другите два файла (kurac.html и pizdac.html). Като напишеш kurac или pizdac в полето ще се отвори съответния файл.
------------------------------------------
| |
Тема
|
Re: Добре.
[re: Бokop]
|
|
Автор |
БM21 (непознат
) |
Публикувано | 04.06.11 17:25 |
|
Клика и браузъра отваря файла.
Може ли да стане без JS, само със HTML?
| |
Тема
|
Re: Добре.
[re: БM21]
|
|
Автор |
Бokop (Христо) |
Публикувано | 05.06.11 10:28 |
|
Може ли да стане без JS, само със HTML?
Не може. Виж какво ти е написал The giver and the taker. Ако искаш преди да отваря файла да проверява дали го има промени index.html на примера, който той ти е дал така (Пробвай го, защото не съм го тествал. Би трябвало да работи със сървър):
<html>
<head>
<title>Отваряне на файл</title>
<script type="text/javascript">
function FileExists(strURL)
{
var oHttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
oHttp.open("HEAD", strURL, false);
oHttp.send();
return (oHttp.status==404) ? false : true;
}
function openFile() {
var fileName = document.getElementById("FileName").value;
var fileAddress = "./htmlfiles/"+fileName+".html";
if(!FileExists(fileAddress))
{
alert("Файлът не съществува!");
return;
}
window.location.href = fileAddress;
}
</script>
</head>
<body>
<form>
Име на файла: <input type="text" id="FileName" value="">
<input type="button" value="Сезам отвори се" onclick="openFile();">
</form>
</body>
</html>
Господ ще ми прости греховете. Това му е работата.
| |
|
|
|
|