У меня вопрос, я не знаю, как этого добиться с помощью Javascript.
У меня есть страница, например, с двумя полями ввода, прямо сейчас я делаю "onKeyUp", вызывая функцию и передавая параметр, указывающий, кто ее вызывает.
Есть ли способ просто вызвать функцию и узнать, какое поле ее вызвало изнутри?
Пример:
<input name = "q1" id = "q1" onkeyup = "mirar('q1')" type = "text" />
<input name = "q2" id = "q2" onkeyup = "mirar('q2')" type = "text" />
Измените это на что-то вроде
<input name = "q1" id = "q1" onkeyup = "mirar()" type = "text" />
<input name = "q2" id = "q2" onkeyup = "mirar()" type = "text" />



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


EventTarget должен предоставить то, что вам нужно.
function mirar()
{
alert("caller is " + mirar.caller);
}
Или было бы приемлемо, если бы они по-прежнему передавали параметр, но тот же параметр?
<input name = "q1" id = "q1" onkeyup = "mirar(event)" type = "text" />
<input name = "q2" id = "q2" onkeyup = "mirar(event)" type = "text" />
function mirar(event) {
alert(event.target.nodeName);
}
Однако первый не даст вам элемент поля ввода.
Вы можете просто передать this, чтобы указать это в функции, чтобы узнать, из какого элемента функция фактически вызывается:
function mirar(el){
console.info('Id:', el.id)
}<input name = "q1" id = "q1" onkeyup = "mirar(this)" type = "text" />
<input name = "q2" id = "q2" onkeyup = "mirar(this)" type = "text" />