Передача элементов события из ввода - PullRequest
0 голосов
/ 01 марта 2020

Я хотел бы знать, есть ли другой способ передать элемент в функцию, используя событие, например, если у меня есть вход:

<input name="myname" onChange={onChange}/>

, тогда в моей функции onChange я увижу это:

onChange=e=>{
console.log(e.target.name)
}

и будет напечатано «мое имя», я буду sh, чтобы дать другое значение, есть ли способ сделать это? например

<input name="myname" othervalue="hi" onChange={onChange}/>

и конечно:

onChange=e=>{
console.log(e.target.name)
console.log(e.target.othervalue)
}

заранее спасибо! РЕДАКТИРОВАТЬ: кроме значения, потому что мне это нужно для формы onChange.

Ответы [ 2 ]

2 голосов
/ 01 марта 2020

Изменение:

console.log(e.target.othervalue)

На:

console.log(e.target.getAttribute('othervalue'));

Вы можете получить значение пользовательского атрибута, используя метод,

e.target.getAttribute ()

1 голос
/ 01 марта 2020

Даже если это не представляет большой проблемы , некоторые могут сказать, что не следует использовать произвольное имя для пользовательских HTML атрибутов.

Я предлагаю использовать dataset собственность любого HTMLElement:

<input name="myname" data-othervalue="hi" onChange={onChange}/>
e.target.dataset.othervalue
...