2010-10-08 3 views
0

Как я могу создать форму, которая позволяет пользователям вводить число, а затем перейти к example.com/page/# где # - это то, что пользователь вводил? Я хочу, чтобы это было для параметра «прыгать».Форма для перехода на страницу

я могу использовать только HTML и JavaScript

ответ

0
<script type="text/javascript"> 
    function goToPage(){ 
     var page=document.getElementById('in').value; // value of input box 
     page=page*1; // ensures page is numeric only 
     location.href='http://www.example.com/page/'+page; // redirect to new url 
    } 
</script> 
<input type="text" id="in"/> 
<input type="button" onclick="goToPage();"/> 
+0

После этого нападают с помощью команды :( – Woot4Moo

+0

@ Woot4Moo - что ?! Страница * 1 точно предотвращает это. – Christian

0
<form id="jump" method="get" action=""> 
    <input type="text" id="jump-page"/> 
    <input type="submit" value="Go"/> 
</form> 

<script type="text/javascript"> 
    document.getElementById('jump').onsubmit= function() { 
     location.hash= document.getElementById('jump-page').value; 
     return false; 
    }; 
</script> 

Для номера страниц вы, вероятно, префикс их как id="page-2" (сделать правильный идентификатор), а затем сделать location.hash= '#page-'+....

+0

# было просто примером, я уверен, что он не имел в виду использование числа после хеш или что-то в этом роде. – Christian

+1

Хм, я не знаю. «Перейти к» звучит как прокрутка до фрагмента. Возможно, вы правы, но вопрос не ясен. – bobince