Вы можете использовать несколько функций, таких как onclick
или onsubmit
(функция формы), но есть также способ сделать это через ввод, используя onchange
или onblur
, но вы должны быть осторожны о поведении каждого.
Как:
onclick
это будет срабатывать при нажатии на элемент.
onblur
он будет срабатывать каждый раз, когда фокус находится вне элемента (обычно он используется при вводе типа text
).
onchange
он будет срабатывать при каждом изменении ввода (при его заполнении).
Так что, следуя вашему примеру кода, возможны следующие варианты:
const element = document.getElementById('element');
const url = "something";
// using on change
element.onchange = function() {
const form = document.getElementById("form");
form.target.url = url;
}
// using onblur
element.onchange = function() {
const form = document.getElementById("form");
form.target.url = url;
}
// using on click
element.onclick = function() {
const form = document.getElementById("form");
form.target.url = url;
}
Теперь, если вы хотите использовать функцию «onsubmit», вам нужно ссылаться на элемент формы, например:
const form = document.getElementById("form");
const formUrl = "something";
form.onsubmit = function(event) {
// if you want to prevent the default form behavior event.preventDefault();
event.target.url = formUrl;
}
После этого вы можете следовать своей нормальной логике.