Angularjs:在缓存模板中按ID查找元素

时间:2015-08-27 11:49:58

标签: jquery angularjs jqlite angular-templatecache

我有几个HTML文件,我需要在这些html文件中提取给定元素的文本内容,并将其作为变量加入角度。

我决定使用angular $templateRequest来获取每个HTML文件,并$templateCache将它们存储在缓存中。我希望通过这种方式我可以使用angular或jQuery / jQueryLite选择器来访问这些缓存的模板,并按元素ID获取特定的元素内容。但是当涉及从给定的缓存模板中检索给定的元素文本时,我正在撞墙。

$templateRequest(htmlFileUrl.html).then(function(htmlFile) {
   $templateCache.put(htmlFileName, htmlFile);
   var template = $templateCache.get(name);
   var elementId = '#some_id'; //element present in htmlFileUrl.html
   var elementText;
   // Assign text value of elementId to elementText SOMEHOW
   console.log(elementText) // Should print text of elementId
});

先谢谢你。

1 个答案:

答案 0 :(得分:0)

假设你在angularjs中使用jQuery,你可以将模板内容传递给它(这不会影响你的DOM)并进行你通常用jQuery做的查找:

var template = $( $templateCache.get(name) );
var elementId = '#some_id';
var elementText = template.find(elementId).text();
console.log(elementText);