Функция Javascript: как ссылаться на элемент, вызывающий функцию, и извлекать значение этого элемента - PullRequest
0 голосов
/ 09 июля 2019

Я пытаюсь создать таблицу с кнопкой для каждой строки, для каждой кнопки я хочу, чтобы она копировала и вставляла значение самой кнопки в нужное поле.моя проблема в том, что я не получаю текстовую копию как <input button value="">

copypaste(id) {
   var texttocopy = document.getElementById(this);
   var wheretocopy = document.getElementById(id);
   wheretocopy.value = texttocopy.value;
}

Я пробовал несколько других вариантов этого, и поиск синтаксиса был бесполезным.

function copypaste(id) {
   var texttocopy = this;
   var wheretocopy = document.getElementById(id);
   wheretocopy.value = texttocopy.value;
}

texttocopy - это значение того, что вызывает функцию.

HTML находится внутри php, так что это причина для.разъемы и переключение "и".

, где кнопка: php echo '<input TYPE="BUTTON" id="barcodebutton" value ="'.$row['barcode1'].'" onclick="copypaste('."'primaryRFID'".');">'

поле для ввода данных в: html <INPUT TYPE="TEXT" id="primaryRFID" NAME="primaryRFID">

ожидаемый результат - входЗначение primaryRFID становится значением нажатой кнопки.

1 Ответ

1 голос
/ 09 июля 2019

Когда вы вызываете функцию из атрибута onclick, функция вызывается без привязки this.Однако this ограничен при выполнении самого кода onclick, так что вы можете просто передать его как обычный аргумент:

onclick="copypaste(this, '."'primaryRFID'".');"

Так что теперь получите значение этого аргумента черезПараметры функции:

function copypaste(texttocopy, id) {
   var wheretocopy = document.getElementById(id);
   wheretocopy.value = texttocopy.value;
}
...