私は変数関数から値を取得する方法は?
var isMember;
IsCurrentUserMemberOfGroup("Team Management System Members", function (isCurrentUserInGroup) {
if (isCurrentUserInGroup) {
//alert("Admin");
isMember = true;
return true;
}
else {
isMember = false;
//alert("NoAdmin")
}
});
alert(isMember);
function IsCurrentUserMemberOfGroup(groupName, OnComplete) {
var currentContext = new SP.ClientContext.get_current();
var currentWeb = currentContext.get_web();
var currentUser = currentContext.get_web().get_currentUser();
currentContext.load(currentUser);
var allGroups = currentWeb.get_siteGroups();
currentContext.load(allGroups);
var group = allGroups.getByName(groupName);
currentContext.load(group);
var groupUsers = group.get_users();
currentContext.load(groupUsers);
currentContext.executeQueryAsync(OnSuccess, OnFailure);
function OnSuccess(sender, args) {
var userInGroup = false;
var groupUserEnumerator = groupUsers.getEnumerator();
while (groupUserEnumerator.moveNext()) {
var groupUser = groupUserEnumerator.get_current();
if (groupUser.get_id() == currentUser.get_id()) {
userInGroup = true;
break;
}
}
OnComplete(userInGroup);
}
function OnFailure(sender, args) {
OnComplete(false);
}
}
と呼ばれるように使用される他の関数にJavaスクリプト機能のうちの値を取得しようとしていますが、私は、私は値取得しています実行すると:未定義
をありがとう
'IsCurrentUserMemberOfGroup'は非同期ですので、' isMember'に警告する際に値を割り当てることはできません。 – Li357
あなたの質問に欠けている部分があります –
'isMember'の値をチェックしようとする前に' IsCurrentUserMemberOfGroup'が起動されていることを確認する必要があります。 –