我被這些問題困住了,希望你能指點我正確的方向。如何添加包含jQuery的AngularJS表達式的ajax加載的內容
這裏是fiddle。
解釋器
1)我通過Ajax請求得到一些HTML模板,一切正常,這是個什麼樣子:
<div>
<h2 class="splash" ng-bind="view.headline || 'That's cool'"></h2>
</div>
正如你已經知道,如果view.headline這將輸出這很酷
2)將模板添加到DOM(只是僞代碼)
<div id="thisIsMyTemplatePlaceholder"></div>
<script>
var templateFromAjax="<h2 ng-bind=\"view.headline||'That's cool'\"></h2>";
$("#thisIsMyTemplatePlaceholder").html(templateFromAjax);
</script>
3)檢查添加HTML可以看到三個「(撇號)在NG-綁定屬性,這將導致我的錯誤
<div id="thisIsMyTemplatePlaceholder">
<h2 ng-bind="view.headline||'That's cool'"></h2>
</div>
4)這個問題似乎是jQuery的.html()函數,因爲它解碼特殊字符。
jquery is transforming this: 'That's cool' into 'That's'
你不應該將jQuery與Angular混合,如果你有一個你想要粘貼到頁面的模板,你應該使用一個指令。因此,要解決您的問題,請使用ng-include粘貼您的模板。 – SoluableNonagon
你能否詳細說明你對該模板的調用是怎樣的?什麼是URL結構? – SoluableNonagon