Firebase выдвигает 1 входное значение, а не Span? - PullRequest
0 голосов
/ 27 марта 2020

Я пытаюсь поместить данные sh в мою базу данных Firebase. Мне удалось 1 пользовательское поле ввода. Однако теперь я пытаюсь иметь значение span в моей базе данных (которое устанавливает его номер на основе ползунка, который управляет им). Это ошибка, которая относится к моей функции writeData (внизу)

Error: Reference.set failed: First argument contains undefined in property 'Exercise.setAm'

У меня есть эти два значения, которые я получаю из html:

const exerciseName = document.getElementById("exercise-search");
 const setAmount = document.getElementById("dynamicSet").innerHTML;

Aреналичное имя упражнения отлично работает, и я вижу результат в своей БД:

DB

Однако мой диапазон не работает, вот мое JS и поле диапазона:

function writeData(){
    firebase.database().ref("Exercise").set({
        nameExercise: exerciseName.value,
        setAm: setAmount.value,
    })
}

<span id="dynamicSet"></span>

Вы видите, куда я иду? неправильно? Я тоже пробовал без внутреннего HTML или без и значения и без ..

1 Ответ

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

Просто сделайте setAmount, а не setAmount.value.

const exerciseName = document.getElementById("exercise-search");

Здесь вы задаете exerciseName элементу

const setAmount = document.getElementById("dynamicSet").innerHTML;

Но здесь вы устанавливаете setAmount на внутренний HTML элемента.

Итак, яблоки и апельсины:

Ваша первая переменная установлена ​​в представлении DOM для элемента HTML, поэтому он будет иметь различные свойства,

Но ваша вторая переменная устанавливается на строковое значение внутреннего HTML другого элемента - и как строка, у него не будет этих свойств DOM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...