gpt4 book ai didi

javascript - 将术语移至另一个分支 - JSOM

转载 作者:行者123 更新时间:2023-12-03 10:35:33 24 4
gpt4 key购买 nike

我需要做这样的事情。下图有 3 个术语,我需要将“我的术语 3”移动到“我的术语 1”下(然后“我的术语 3”将作为“我的术语 1”的子术语。

enter image description here

如何使用 JSOM,2013 Sharepoint 来实现此目的。在这里,我使用了我用来重用术语的代码,但重用意味着只是共享。我虽然重复使用该术语并稍后删除它,但它确实删除了两者。我只需要移动,知道吗? MSDN 没有给出 moveTerm 的方法..

function reuseTerm() {

alert('check reuse');
var sourceTermId = 'c0351a3d-5eec-454d-8bc6-4f3ac0992a84'; //Id of source Term
var destTermId = '2085753f-2804-44c4-b16d-5b93cbbc989d'; //Id of Term below which a reused term will be created

var ctx = SP.ClientContext.get_current();
var taxonomySession = SP.Taxonomy.TaxonomySession.getTaxonomySession(ctx);
var sourceTerm = taxonomySession.getTerm(sourceTermId);
var destTerm = taxonomySession.getTerm(destTermId);

destTerm.reuseTerm(sourceTerm, true);//I need something like destTerm.moveTerm(sourceTerm, true);

ctx.executeQueryAsync(
function () {
alert('Reused term has been created');
},
function (sender, args) {
alert(args.get_message());
});



}

最佳答案

使用SP.Taxonomy.Term.move Method移动当前Term对象成为不同术语的子级。

示例

function moveTerm(sourceTermId,targetTermId,success,error)
{
var ctx = SP.ClientContext.get_current();
var ts = SP.Taxonomy.TaxonomySession.getTaxonomySession(ctx);
var termStore = ts.getDefaultSiteCollectionTermStore();
var sourceTerm = termStore.getTerm(sourceTermId);
var targetTerm = termStore.getTerm(targetTermId);
sourceTerm.move(targetTerm);
ctx.executeQueryAsync(success,error);
}

使用

SP.SOD.registerSod('SP.ClientContext', SP.Utilities.Utility.getLayoutsPageUrl('sp.js'));
SP.SOD.registerSod('SP.Taxonomy.TaxonomySession', SP.Utilities.Utility.getLayoutsPageUrl('sp.taxonomy.js'));
SP.SOD.loadMultiple(['SP.ClientContext', 'SP.Taxonomy.TaxonomySession'], function(){

var sourceTermId = 'source-term-guid';
var targetTermId = 'target-term-guid';

moveTerm(sourceTermId,targetTermId,
function(){
console.log(String.format('Term {0} has been moved under Term {0}',sourceTermId,targetTermId));
},
function(sender,args){
console.log(args.get_message());
});
});

关于javascript - 将术语移至另一个分支 - JSOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29003455/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com