2016-11-25 1 views
0

Я застрял в этой проблеме на пару дней, и я понятия не имею, что делать. Я хочу перейти непосредственно на другую страницу с моего собственного сайта, только написав имя страницы (без «.html» или «.php» на входе.Использование ввода для поиска локальной веб-страницы в HTML

Пример: вы пишете «индекс» в текстовом поле и один раз вы нажимаете на кнопку отправки он посылает вам «http://www.website.com/индекс .html». Вместо того, чтобы делать это, он посылает меня «http://www.website.com/?2016=index&.=html»

я получил это совершенно неправильно, потому что он посылает имена входных и некоторые символы вокруг их

Это мой код HTML:

<form id="newsearch" method="get" action="http://www.website.com/"> 
    <p>Enter your confirmation number:</p> 
    <input type="text" id="searchvalue" class="textbox1" name="2016" size="50" maxlength="120"><input type="submit" class="button1" value=">"> 
    <input type="hidden" id="hiddenvalue1" name="." value="html"> 
    </form> 
+0

Это кажется странным образом для пользователя навигации, имея угадать, на какой странице имен файлов возможно. – nnnnnn

+0

где вы JS? – snit80

+0

@nnnnnn Это переход к «полу-частной» странице из автоматического кода, который моя система предоставила им. –

ответ

1

Ваш текущий код просто представляет форму, поэтому он правильно добавляет введенное значение как часть строки запроса ?2016=index&.=html".

Чтобы перейти к местоположению, добавьте представить обработчик в форме, которая аннулирует форму по умолчанию навигационной и вместо этого устанавливает window.location на соответствующее значение, возможно, что-то вроде этого:

document.getElementById("newsearch").addEventListener("submit", function(e) { 
    e.preventDefault(); 

    var searchText = document.getElementById("searchvalue").value; 
    var extension = document.getElementById("hiddenvalue1").value; 

    window.location = this.action + searchText + "." + extension; 
    // or if you don't want to use the form's action attribute to specify 
    // the domain you could hardcode it in the function: 
    // window.location = "http://www.website.com/" + searchText + "." + extension; 
}); 

(Обновления: выше код должны были бы быть в элементе сценария, который после форма элемента, и/или в DOMContentLoaded или window.onload обработчика.)

Смежные вопросы