#html #dom
#HTML #dom
Вопрос:
0
теперь это мой код
файл шаблона:
<quill-view-html [content]=»вопрос.questionText» format =»html» theme =»snow» [id]=»question.id » [изменить]=»loadAnswer(Студенческий ответ)»
.ts-файл:
loadAnswer(studentAnswer) {
if (document.getElementById(question.id)) {
let inputs =
document.getElementById(question.id).getElementsByTagName('input') || [];
inputs.forEach((input, index) => {
input.value = studentAnswer[index]
})
}
}
ответ отображается в поле ввода, но я не могу ввести новый ответ поверх него, поскольку возвращается предыдущий ответ. Есть какое-либо решение для этого?
Комментарии:
1. Я не могу понять вопрос, и из этого кода не похоже, что вы вообще используете Angular. Кроме того, вам необходимо предоставить общий доступ к соответствующей части вашего шаблона.
Ответ №1:
Во-первых, давайте сделаем ваш код более красивым.
loadAnswer(studentAnswer){
if (document.getElementById(question.id)) {
let inputs = document.getElementById(question.id).getElementsByTagName('input') || [];
inputs.forEach((input, index) => {
input.value = studentAnswer[index]
})
}
}
Можете ли вы поделиться с нами кодом вашего шаблона? Функция выглядит хорошо.
Комментарии:
1. <quill-view-html [content]=»questionText» format=»html» theme=»snow» [id]=»question.id «> </quill-view-html> {{loadAnswer(вопрос)}}
2. Эта функция не возвращает никакого значения. Вы не должны использовать {{ }} . Попробуйте (изменить)=»loadAnswer(вопрос)» в редакторе.