2016-08-18 3 views
-1

Таким образом, у меня есть яваскрипт массив и в массиве У меня есть это:печать Javascript массив Значение Правильно

var quiz = [{ 
    "question": "What is the greatest common factor of 105 and 126?", 
    "image": "", 
    "choices": ["3", "7", 
     "9", "21", "35" 
    ], 
    "correct": "21", 
    "conceptlink": "https://www.khanacademy.org/math/in-sixth-grade-math/playing-numbers/highest-common-factor/v/greatest-common-divisor", 
    "explanation": "In order to solve this question, you must factor each number into prime factors<h1>Height</h1>", 
}]; 

Фокус на объяснении подмножества массива. У меня есть элемент H1, который я хочу распечатать, но вместо этого он печатается как часть текста вместо кода. Другими словами, текст будет гласить:

enter image description here

Вместо: enter image description here

Вот код, который печатает Объяснение

$('#explanation').html('<strong>Incorrect.</strong> ' + htmlEncode(quiz[currentquestion]['explanation'])); 

Любая помощь от JS экспертов бы с удовольствием оценили !!

+0

'htmlEncode()' работает нормально :) – Andreas

+0

К сожалению. Я тестировал его несколько раз. :( –

ответ

0

У вас его почти нет. Я не уверен, что делает ваша функция htmlEncode(), но если вы ее не используете, она должна дать вам то, что вы хотите. Вот jsbin демонстрирует это: http://jsbin.com/yeyuqoqabe/edit?html,output

Если вы хотите знать, как сделать строку HTML безопасным, вот вопрос, который может помочь: How to encode a string in JavaScript for displaying in HTML?

+0

Спасибо. Я думал, что htmlEncode был родным для JQuery. Я нашел исходный код и отредактировал функцию! –

0

Я не думаю, что вам нужно HTMLEncode для этого. Я предлагаю вам попробовать:

$('#explanation').html('<strong>Incorrect.</strong><span>').find('span').text(quiz[currentquestion]['explanation'])) 
Смежные вопросы