Как передать текст из inputtext в URL? - PullRequest
0 голосов
/ 16 февраля 2019

Я хочу передать текст ввода, id = "u_name" в URL действия формы.

<form  id = "ismForm" action = {% url 'polls:todo'  %} method="get" >
    <input type="text" id = "u_name" name="name" />
    <input type="text" name="email" />
    <input type="text" name="pass" />
    {% csrf_token%}
    <input type="submit" name="click" value="Register" />
     />

</form>

1 Ответ

0 голосов
/ 16 февраля 2019

Добавьте слушателя в форму для отправки.При отправке добавьте значение u_name к action.

const form = document.getElementById("ismForm");

form.addEventListener("submit", function(e){
  //check to see if the form is valid before doing this...
  this.action += `?u_name=${form.querySelector('#u_name').value}`
})

Не нужно делать e.preventDefault(), поскольку цель состоит в том, чтобы навигатор обрабатывал отправку формы.

Рабочий пример: (e.preventDefault() требуется, чтобы увидеть console.log вывод)

const form = document.getElementById("ismForm");

form.addEventListener("submit", function(e){
  e.preventDefault()
  this.action += `?u_name=${form.querySelector('#u_name').value}`
  console.log(this.action);
})
<form  id = "ismForm" action ="/some/url" method="get" >
    <input type="text" id = "u_name" name="name" />
    <input type="submit" name="click" value="Register" />
</form>
...