Javascript SharePoint JSOM获取分类递归
关于使用JSOM/javascript从术语组递归获取术语树,我遇到了一个问题 问题是我确实得到了所有的递归值,但是顺序是完全错误的Javascript SharePoint JSOM获取分类递归,javascript,recursion,sharepoint-2013,Javascript,Recursion,Sharepoint 2013,关于使用JSOM/javascript从术语组递归获取术语树,我遇到了一个问题 问题是我确实得到了所有的递归值,但是顺序是完全错误的 function recurseTerms(currentTerm, loops){ loops++; var terms = currentTerm.get_terms(); context.load(terms); context.executeQueryAsync( function () { var termsEnum =
function recurseTerms(currentTerm, loops){
loops++;
var terms = currentTerm.get_terms();
context.load(terms);
context.executeQueryAsync(
function () {
var termsEnum = terms.getEnumerator();
while (termsEnum.moveNext()) {
var newCurrentTerm = termsEnum.get_current();
termstext += newCurrentTerm.get_name() + "<br>";
//Check if term has child terms.
if (newCurrentTerm.get_termsCount() > 0) {
recurseTerms(newCurrentTerm, loops);
}
}
document.getElementById("resultsDiv").innerHTML = termstext;
},
function () {
//failure to load terms
});
但不幸的是,我的函数(termstext)的输出是:
因此,我假设当函数到达术语“级别1”时,他将检测子项并通过在“级别1”下打印子项来递归,但显然情况并非如此
我知道问题出在哪里,但我无法找到解决方案:(
有谁能告诉我好办法吗?
非常感谢!好的,我很久以前就用javascript承诺解决了这个问题。当检索到级别1时,我们可以调用函数等等。请分享可能帮助像我这样的人寻找解决方案的解决方案Ok,这已经有一段时间了,但我会尝试尝试再次输入此代码;-)
Level 1
--Level 1a
--Level 1b
Level 2
Level 3
--Level 3a
----Level 3a
------Level 3a1
------Level 3a2
--------Level 3a2a
--------Level 3a2b
----Level 3b
Level 1
Level 2
Level 3
Level 1a
Level 1b
Level 3a
Level 3b
Level 3a1
Level 3a2
Level 3a2a
Level 3a2b