让我先说Javascript并不是我的强项,并且我为这个主题的信息所做的所有搜索都导致了如何处理url编码/解码字符串。防止Javascript解码编码的HTML
我有一些代码的麻烦类似以下内容:
<a href="#" onclick="<?php echo "alert(''');"; ?>">test</>
我预计,由于值传递给警报URL编码,即点击链接时,会显示一个提示框其中值为'
。
事实证明,因为它位于onclick的引号之间,所以浏览器在执行之前将'解码为单引号。基本上导致代码是alert(''');
,这显然破坏可怕。
以下工作正常。
<script>alert(''');</script>
首先,有没有办法来禁用这种行为或聪明的解决方法? (我猜不是)
我目前的解决方案是解码html编码的字符串,应用斜杠引号,然后重新编码它。显然不是很优雅。
更好的解决方案将不胜感激。
我实实在在地感受到那种如果密被提醒有关'htmlspecialchars'。这是一天结束,我缺乏caffine。干杯。 – Leigh 2012-02-29 17:16:03