私は、SnapフレームワークとHeistテンプレートエンジンを使用しています。問題は、JavaScriptコードヘイストの腐敗がHTMLにインライン化ということである。ヘイストテンプレートのjavascriptをエスケープしないで保存するには?
<script type="text/javascript">alert('hello');</script>
は変身:
<script type="text/javascript">alert('hello');</script>
がどのように私はscript
タグの内容を保存するために強盗を伝えることができますか?
編集:私はちょうどそのようなスプライスを実装:
verbatimSplice :: MonadIO m => Splice m
verbatimSplice = do
node <- getParamNode -- get <script> node
stopRecursion -- stop recursive processing of splices
lift $ liftIO $ print node -- show me the node
return [node] -- return <script> as is
しかし、スクリプトタグにこのスプライスを結合しても解決しません。それはすべてのスプライスを実行した後にhtmlエンティティの置き換えが行われると思います。
こんにちは、面白いです。技術的には、後者が(仕様に準拠して)動作するはずですが、もちろん、この分野のブラウザコンプライアンスは不十分です。 Heistにスクリプトタグの特別な規定がない場合は、これはちょっと難しいかもしれません。あなたは最近、どんなコメントをしても邪魔にならないコメントを使用する必要があります。 –
@エドワード、残念だが、Firefox(少なくとも3.6.13)は後者のスクリプトを理解していない。それがなぜ必要なのかを説明するスペックを指すことができますか? –