Передача значения элемента html в качестве параметра в ember - PullRequest
0 голосов
/ 09 февраля 2019

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

    <tr value = "0" onmouseover={{action 'displayBar' this.value}}>

          //     ^ This is the value I am trying to pass      ^ This is how I am trying to pass it

Я пробовал this.value, value = "target.value", value и т. Д., Но все получилось неопределенным.Единственный способ получить параметр неопределенным, если я просто отправил «0» в качестве параметра вместо this.value.

Ответы [ 2 ]

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

target.value будет работать только для input элементов.value не является атрибутом HTML для элементов, отличных от input, поэтому у цели нет свойства value, равного этому атрибуту.

Вместо этого вы можете передать всю цель следующим образом:

<tr data-value=0 onmouseover={{action 'displayBar' value="target"}}>

и затем в вашем js:

actions: {
  displayBar(target) {
    const value = target.getAttribute('data-value');
  }
}

Вот рабочий Ember Twiddle: https://ember -twiddle.com / c177c2be6f7d740968e2f02f79748d83? OpenFiles = controllers.application.js%2C (просто наведите курсор на «Много вещей»)

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

это работает:

<tr onmouseover={{action 'displayBar' 0}}>

?

...