#javascript #html
Вопрос:
У меня есть класс (для создания пользовательского элемента формы) под названием ListOfDropdowns внутри html-файла :
class ListOfDropdowns extends HTMLElement { connectedCallback() { let myParent = document.body let array = ['Volvo', 'Saab', 'Mercades', 'Audi'] let template = document.querySelector('#list-of-dropdowns-template').content; this.attachShadow({ mode: 'open' }).appendChild(template.cloneNode(true)); let add_button = this.shadowRoot.querySelector("#add"); let remove_button = this.shadowRoot.querySelector("#remove"); let list = this.shadowRoot.querySelector("#list"); add_button.addEventListener('click', () =gt; { var selectList = document.createElement('select') selectList.id = 'mySelect' selectList.style.display = 'block' myParent.appendChild(selectList) //Create and append the options for (var i = 0; i lt; array.length; i ) { var option = document.createElement('option') option.value = array[i] option.text = array[i] selectList.appendChild(option) } list.appendChild(selectList) }); remove_button.addEventListener('click', () =gt; { list.lastChild.remove() }); } } customElements.define('list-of-dropdowns', ListOfDropdowns);
И несколько строк под классом, у меня есть этот код:
var VIA_ATTRIBUTE_TYPE = { TEXT:'text', CHECKBOX:'checkbox', RADIO:'radio', IMAGE:'image', DROPDOWN:'dropdown' ListOfDropdowns:'listofdropdowns' };
Но я получаю ошибку в строке ListOfDropdowns:»listofdropdowns».
Uncaught SyntaxError: Unexpected identifier
Оба класса ListOfDropdowns и VIA_ATTRIBUTE_TYPE определены/объявлены внутри lt;scriptgt;
тега внутри lt;bodygt;
тега в файле .html.
Комментарии:
1. Вы пропускаете запятую после
DROPDOWN:'dropdown'
2. Большое Вам спасибо! Это было глупо с моей стороны!
Ответ №1:
Основываясь на комментарии, я добавил запятую после DROPDOWN:'dropdown'
, и это устранило ошибку.
var VIA_ATTRIBUTE_TYPE = { TEXT:'text', CHECKBOX:'checkbox', RADIO:'radio', IMAGE:'image', DROPDOWN:'dropdown', ListOfDropdowns:'listofdropdowns' };