2015-10-15 47 views
0

我試圖在jQuery模板中使用{{html}}加載字符串。 但腳本注入會影響{{html}}。 如何限制腳本注入。腳本注入影響jQuery模板

+0

jsrender –

+0

@ArunPJohny jQuery的模板 – user3312945

+0

你可以重新創建問題http://jsfiddle.net/arunpjohny/6budswe9/1/ –

回答

0

這不是問題是jQuery模板,這是因爲這是HTML如何解析字符串文字中的<script>元素。請參閱Why split the <script> tag when writing it with document.write()?

如果您想解析並執行腳本,那麼簡單的方法是將腳本移動到單獨的文件(並將該文件包含在html頁面中)而不是內聯它。

或者你也可以在你使用jQuery模板或逃避它像

testTemplate = "<i>{{html txt}}</i>"; 
 
$.template('testTemplate', testTemplate); 
 
$.tmpl("testTemplate", { 
 
    txt: "<b>bold</b> and \x3Cscript>alert('abc')\x3C/script>" 
 
}).appendTo("#target");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.js"></script> 
 
<ul id="target"></ul>

+0

是否有其他限制該場景的方法? – user3312945

+0

@ user3312945沒有我知道的 –