ライブプレビュー機能のために、$.html()
jqueryを使用して入力テキストエリアからページ上の別のテキストエリアに顧客が作成したコンテンツを挿入する必要がありますdiv
しかし、顧客がコンテンツ内にjavascriptを入力した場合、次のようになります。
<script type='text/javascript'>
alert('abc');
</script>
これをで呼び出すと.html()
、javascriptが実行され、を使用する.text()
と、コンテンツはhtmlとは見なされません。
どうすればこれを修正できますか?私はそれのためにjsfiddleを作成しました:http://jsfiddle.net/larryzhao/VL82f/
更新:たぶん私はそれをより明確にする必要があります、私はマークダウンのプレビューをしています。そこで、ユーザーはテキストエリアにマークダウンを入力し、htmlに変換して、に表示しますdiv#dest
。ユーザーが上記のようにスクリプトを入力した場合はどうなりますか?元のタイプを保持するが実行しない方法はありますか?そうでない場合は、スクリプトブロックを消去するために正規表現を作成するだけだと思います。
私は2つのオンラインマークダウンツールを見つけました:http: //daringfireball.net/projects/markdown/dingus これはそれを実行し ますhttp://www.ctrlshift.net/project/markdowneditor/そしてこれはスクリプトブロックを一掃するだけです