ユーザーが入力した html を (WYSIWYG から) 表示したい。
しかし、html から js を削除する際にいくつか問題があります。
これが私の見解です:
def bad_view(request):
# in real project we got it from user
bad_html = '<p onclick="alert(0)">:((</p><script>alert(0);</script>'
return render(request, 'template.html', {'bad_html': bad_html})
ここに私のテンプレートのコード:
{{ bad_html|safe }}
bad_html はこのようにする必要があります<p onclick="">:((</p>
このhtmlからすべてのjsを削除する最良の方法は何ですか?
削除<script>
には正規表現を使用できますが、onclick ハンドラー (およびその他の js ハンドラー) はどうですか?
アドバイスありがとうございます!