Редактирование от CSS до JavaScript приводит к ошибке присвоения слева - PullRequest
1 голос
/ 06 февраля 2020

Я пытаюсь создать список, когда при щелчке по элементу элемент подвергается ударам (грамматика?). Однако я получаю следующую ошибку: SyntaxError: invalid assignment left-hand side. Я новичок в веб-разработке, поэтому я не знаком с процессом отладки.

Я изначально структурировал свой код, передав функцию, которая ударила бы по элементу, но это не сработало. Для справки: функция getForm () получает входные данные из поля ввода и добавляет их к отображаемому под полем ввода.

function getForm() {
.
.
.
/* Append the input to the list */
    var node = document.createElement("LI"); // Create a <li> node
    node.setAttribute("onclick", "strikethroughItem(this.id)"; // call func on click
    var textnode = document.createTextNode(task.name); // Create a text node
    node.appendChild(textnode);
    document.getElementById("list").appendChild(node); // Append <li> to <ul> with id="myList"
}
function strikethroughItem(id) {
    document.getElementById(id).style.text-decoration = "line-through";
}

В попытке выяснить, был ли это проблемный подход c, я настроил его для непосредственного редактирования, вот так.

function getForm() {
/* Append the input to the list */
    var node = document.createElement("LI"); // Create a <li> node
    node.setAttribute("onclick", "document.getElementById(this.id).style.text-decoration = 'line-through'"); // call func on click
    var textnode = document.createTextNode(task.name); // Create a text node
    node.appendChild(textnode);
    document.getElementById("list").appendChild(node); // Append <li> to <ul> with id="myList" 
}

Однако выдает ту же ошибку.

Ответы [ 3 ]

0 голосов
/ 06 февраля 2020

[...].style.text-decoration недействительно; text-decoration не является действительным JS идентификатором. Это должно быть textDecoration.

Объяснение:

К JS вы говорите [...].style.text - decoration = xxx.

0 голосов
/ 06 февраля 2020

Обычно в JavaScript функции и свойства записываются в camelCase. Поэтому, когда вы пишете

document.getElementById(id).style.text-decoration = "line-through"

JavaScript, вы видите символ минус (-) как странное вычитание и задание с левой стороны и становитесь немного сумасшедшим.

Чтобы решить измените его, чтобы использовать правильное свойство стиля.

document.getElementById(id).style.textDecoration = "line-through"

Более подробную информацию о стилизации можно получить с помощью JavaScript в w3schools здесь и отображении между CSS и JavaScript свойства здесь .

0 голосов
/ 06 февраля 2020

CSS text-decoration должно быть записано textDecoration в Javascript!

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