djamali
@djamali
web developer

Реально ли такое вообще?

Я новичек в js.
Мне нужно подставлять в action формы значение из инпута, пытаюсь так :
<form action="/search/node/document.getElementById('search').value" method="get">
                    <span class="icon"><i class="fa fa-search"></i></span>
                    <input type="search" id="search" placeholder="Поиск..." />
                        <input type="submit">
                    </form>

Не получается
Как правильно реализовать чтобы работало?
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
AlexanderTsymbal
@AlexanderTsymbal
tsymbal.su
правильнее так:

jQuery(document).ready(function($){
  $('#searchform [type="submit"]').on('click', function(e){
    e.preventDefault();
    $(this).closest('form').attr('action', '/search/node/' + $('#search').val()).submit();
  });
});


И не забудьте к форме (<form>) добавить id="searchform", иначе код будет срабатывать при отправке любой формы на сайте.

И раз уж автор вопроса новичок в JS, то стОит упомянуть, что данный код работает на фреймворке jQuery, который нужно подключить до вызова этого кода. А этот код - непосредственно после вывода кода формы, обернув в <script>...</script>.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
kimono
@kimono
Web developer
$('button[name=fake-submit]').on('click', function(){
    $(this).closest('form').attr('action', '/search/node/' + $('#search').val()).submit();
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы