Перейти к содержимому


Фото
- - - - -

ЧПУ из формы


Best Answer chocolate_moles , 19.01.2019 - 13:15

<form action="search" method="post">
    <input type="text" name="keyword" value="{$keyword|escape}" placeholder="Поиск товара">
    <input type="submit">
</form>

<script>
document.querySelectorAll("[action=search]")[0].addEventListener('submit', function(e){
    e.preventDefault();

    window.location = "{$config->root_url}/search/" + document.getElementsByName("keyword")[0].value;
}, false);
</script>
Перейти к посту


  • Закрыто Тема закрыта
4 ответов в теме

#1 question

question
  • Пользователь
  • 273 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Россия

Опубликовано 19.01.2019 - 12:57

Хочу переделать форму поиска так, чтобы отправляла не на url типа site.ru/search?keyword=товар, а на site.ru/search/товар

Как это сделать?



#2 chocolate_moles

chocolate_moles
  • Фрилансер
  • 468 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Санкт-Петербург

Опубликовано 19.01.2019 - 13:15   Best Answer

<form action="search" method="post">
    <input type="text" name="keyword" value="{$keyword|escape}" placeholder="Поиск товара">
    <input type="submit">
</form>

<script>
document.querySelectorAll("[action=search]")[0].addEventListener('submit', function(e){
    e.preventDefault();

    window.location = "{$config->root_url}/search/" + document.getElementsByName("keyword")[0].value;
}, false);
</script>

Изменено: chocolate_moles, 19.01.2019 - 13:33


#3 question

question
  • Пользователь
  • 273 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Россия

Опубликовано 19.01.2019 - 13:30

form action="search/"

 

Как после search подставить значение переменной keyword?



#4 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 7 105 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 19.01.2019 - 13:41

form action="search/"
 
Как после search подставить значение переменной keyword?

К примеру, можно вот так:
<form action="search" onsubmit="window.location='{$config->root_url}/search/'+this.keyword.value;">
	<button type="submit"></button>
	<input type="text" name="keyword" value="{$keyword|escape}" placeholder="Поиск товара..." />
</form>


#5 question

question
  • Пользователь
  • 273 сообщений
  • Заказчик, Пользователь
  • Версия CMS:2.x
  • Откуда:Россия

Опубликовано 19.01.2019 - 15:04

<form action="search" method="post">
    <input type="text" name="keyword" value="{$keyword|escape}" placeholder="Поиск товара">
    <input type="submit">
</form>

<script>
document.querySelectorAll("[action=search]")[0].addEventListener('submit', function(e){
    e.preventDefault();

    window.location = "{$config->root_url}/search/" + document.getElementsByName("keyword")[0].value;
}, false);
</script>

Шикарно. Спасибо.






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых