Добавьте пользовательский ввод в URL-адрес действия

#javascript #python #html #flask #url

Вопрос:

Когда пользователь нажимает «Отправить», он должен открыться http://127.0.0.1:5000/default/ Ввод пользователя. Но функция giveme() возвращает «?ключевое слово=userInput» вместо «userInput». Как я могу получить правильный URL-адрес?

     <form id="myform" class="form-horizontal"  action="http://127.0.0.1:5000/default/"   
            giveme() method="get" >

        <div id="searchkeyword">
             <div class="form-group">
                <label for="keyword" class="col-sm-3 control-label">Enter keyword</label>
                <div class="col-sm-4">
                    <input type="text" name="keyword" id="keyword" class="form-control">
                    <br>
                </div>
            </div>
        </div>


        <div class="form-group">
            <div class="col-sm-offset-3 col-sm-9">
                <button type="submit" class="btn btn-primary">Submit amp;raquo;</button>
                <span class="small-paddingleft">*Required</span>
            </div>
        </div>
    </form>
   <script>
   function giveme(){
        document.getElementById("keyword").value;
   }
   </script>
 

Ответ №1:

Вот функция, которая получает то, что вы хотите:

 function giveme() {
  const params = new URLSearchParams(window.location.search);
  document.getElementById("keyword").value = params.get('keyword');
}