无法获得在js测验结果中显示的链接

时间:2017-02-03 20:57:20

标签: javascript wordpress

在"解释"测验答案的一部分,我试图包含一个链接,但html总是被剥离。

这是.js文件的第446行:

$('#quiz-form').append('<p class="special" id="special_' + key + '" ><strong>Correct answer(s): ' + answer + '</strong> » Explanation: ' + special + '</p>');

我已经尝试了所有链接和转义的变体我可以找到,但它们都只是将标题显示为纯文本。以下是我尝试过的内容,这些内容目前位于前六个问题的解释部分:

  1. special: "<a href='URL'>title</a>"
  2. special: "<a href=\'URL\'>title</a>"
  3. special: "<a href=&quot;URL&quot;>title</a>"
  4. special: "<a href="\&quot;URL\&quot;">title</a>"
  5. special: "<a href=\x22URL\x22>title</a>"
  6. special: "<a href=\x27URL\x27>title</a>"
  7. 不幸的是,没有办法直接链接到答案页面 - 你必须弄错前六个问题才能看到截图中显示的解释。

    ETA:现在我对尖括号进行编码,整个a href字符串显示为文字。

    special: "&lt;a href='URL'&gt;title&lt;/a&gt;"
    

    显示为

    <a href='https://www.lawlessfrench.com/vocabulary/introductions/'>Introductions</a>
    

    进展?

    https://www.lawlessfrench.com/quizzes-and-tests/proficiency-test-1/

    https://www.lawlessfrench.com/wp-content/themes/cassie/js/proficiency-test-1.js

    enter image description here

1 个答案:

答案 0 :(得分:0)

嗯,在jsFiddle为我工作。也许问题是你的jQuery版本太旧了,或者浏览器或jQuery可能试图阻止XSS攻击。

尝试更改

special = value.special;

special = $('<span>' + value.special + '</span>').html();