Передача переменных из eventListener`a другой функции
Уважаемые форумчане, помогите пожалуйста начинающему:
Задача - передача переменных, полученных от addEventListener - другой функции: // Сбор значений с формы var form = document.querySelector("form"); form.addEventListener("submit", function(event) { event.preventDefault(); var from = form.elements.from.value; var to = form.elements.to.value; }); function soapRequest(){ // Передать сюда переменные с введенными с формы значениями } <form class="myform" action="#" method="post"> <input id="from" name="from" placeholder="From"> <input id="to" name="to" placeholder="To"> <input type="submit" value="Search" onclick="soapRequest();"> </form> Благодарю за внимание! |
var form = document.querySelector("form"); form.addEventListener("submit", function(event) { event.preventDefault(); var from = form.elements.from.value; var to = form.elements.to.value; soapRequest(from, to); }); function soapRequest(from, to){ // Передать сюда переменные с введенными с формы значениями } Можно в первой функции вызвать вторую и передать ей параметры |
ТС, пили кулстори целиком.
form.addEventListener("submit", function(e) { e.preventDefault(); var els=this.elements; soapRequest(els.from.value,els.to.value) }); |
ТС не понимает базиса
Цитата:
Например те же яйца вид сбоку: var validate = function(event) { event.preventDefault(); var els=this.elements; soapRequest(els.from.value,els.to.value) }; form.addEventListener("submit", validate); То есть зачем куда-то передавать набор переменных, если можно там же все решить. ЗЫ откуда в validate берется event и this? Из вызываемой функции. Это надо понимать, что у "листенера" есть такой вот унутренний интерфейс, то есть метод: .submit=function(event,this){}; или просто свойство .submit, это сейчас не важно который просто перезаписывается функцией addEventLisnener, то есть она заменяет .submit=function(event,this); на .submit=function(event,this){// тут дохера кошерного кода }; или на указатель функции .submit=my_lovely_fynction И когда событие сгорает, внутри извилин браузера делается вот так .submit(event,this); То есть функция запускается. Если никто не менял ее - событие остается незамеченным, а если поменяли - обрабатывается. |
Часовой пояс GMT +3, время: 11:37. |