0
我使用Jinja2的插入JavaScript函數裏面的字符串,像這樣:爲什麼轉義單個qoute '結束javascript字符串?
<button type="button" onclick="someFunction('{{ aStringWithSignleQuote }}');">
我有神社的autoescaping功能開啓,使得單引號呈現爲
'
如果我查看頁面的源代碼,那麼這個工作(我看到逃跑的charakter),但是當我點擊按鈕時,有一個錯誤,因爲JavaScript認爲,字符串在逃脫的單引號結束。
有人猜測這裏發生了什麼?
請不要使用事件處理程序屬性。而'javascript:'完全放錯了位置。 – Bergi
@Bergi然後做這件事的最佳做法是什麼? – fhchl
使用[unobtrusive javascript](https://en.wikipedia.org/wiki/Unobtrusive_JavaScript)。從腳本中添加事件處理程序,而不是在標記中。當然,在將其回送到腳本時,您仍然需要將字符串轉義。 – Bergi