我正在构建一个代码片段系统,并使用jQuery来显示编辑器。我注意到jQuery喜欢注释掉任何内联PHP代码。有没有办法防止这种情况发生:
<textarea id='beep'></textarea>
jQuery代码:
var code = "<div>Why <?php echo 'hello'; ?> there!</div>";
var parsed = $(code).html();
$('#beep').val(parsed);
这就是我想在textarea中看到的内容:
Why <?php echo 'hello'; ?> there!
但是jQuery修改它看起来像这样:
Why <!--?php echo 'hello'; ?--> there!
我知道这可能是一种安全措施,但有没有办法阻止这种情况发生?
我知道我可以使用HTML实体来解决这个问题,但是由于这个工具的性质,它会干扰有意包含html实体的代码片段。
JSFiddle:http://jsfiddle.net/YB4fD/1/
附加节点:一些答案建议我使用JavaScript来处理这个没有jQuery,但我需要jQuery。我的字符串包含一个DOM树,我正在使用jQuery进行解析。
答案 0 :(得分:1)
试试这个:
var code = "<div>Why <?php echo 'hello'; ?> there!</div>";
答案 1 :(得分:0)
这就是诀窍。
var code = "Why <?php echo 'hello'; ?> there!";
document.getElementById('beep').appendChild(document.createTextNode(code));
在textarea元素中使用其他元素无效。