我正在使用SPServices(GetListItems方法)從分享點列表中獲取一些信息。該列表包含一個「人員或組」類型字段,它返回用戶分隔符號「43#; John Doe」的數字ID和名稱(顯示名稱)。 我需要此字段中所有用戶的電子郵件地址(在所有返回的行中)。誰能幫忙? 在此先感謝。在SPServices中獲取用戶的電子郵件地址
回答
保羅你搖滾:)
從保羅的最後一條評論我得到了所需的東西。這是完美的。 :)
你只需要的是添加以下的號召
CAMLQueryOptions: "<QueryOptions><ExpandUserField>True</ExpandUserField></QueryOptions>",
所以我的例子調用成爲該
$().SPServices({ operation: "GetListItems", async: false, listName: "Assignees", webURL: "https://col.wow.telenor.com/sites/go/",
CAMLViewFields: "<ViewFields Properties='True'/>",
CAMLQuery: "",
CAMLQueryOptions: "<QueryOptions><ExpandUserField>True</ExpandUserField></QueryOptions>",
completefunc: function (xData,Status) {
$(xData.responseXML).SPFilterNode("z:row").each(function() {
try {
//ows_Name1 is a field of type "People or Group" the after adding CAMLQueryOptions this field returns all the fields
// propeties of user i.e. Displayname,ID,email id, domain login, sip ID etc all separate by #
var title = $(this).attr("ows_Name1");
// Splitting the resultant string with # give you string array of all the properties. In my case email ID is at
// index 3.
var userEmail = userText.split('#')[3];
// Below line is added to remove the trailing "," from email id
userEmail = userEmail.substring(0,userEmail.indexOf(','));
}
catch (e) {
alert('Exception: ' + e.message);
}
});
}
});
對不起保羅我必須取消標記您接聽和撥打這一個回答:)
@Mujaba,
我已經採取了用戶名和使用人員的服務和SearchPrincipals方法做它的搜索做之前...下面是一個例子:
var userEmail = '';
var userId = '43';
$().SPServices({
operation: "SearchPrincipals",
searchText: "John Doe",
async: true,
completefunc: function(xData, status){
$(xData.responseXML).find("PrincipalInfo")
.each(function(){
var thisUser = $(this);
if ($.trim(thisUser.find("UserInfoID").text()) == userId) {
userEmail = $.trim(thisUser.find("Email").text());
alert("User's email: " + userEmail);
return false;
}
});
}
});
保羅。
感謝保羅的迴應,這將工作,但如果我們必須解析數百個用戶,那麼加載將需要很長時間。無論如何,我會嘗試使用這個。 :) –
好的。我不知道爲什麼我最初沒有想到這一點。還有一個CAML opiton,您可以將其提供給GetListItems,以便擴展用戶關於響應的內容。我從未使用過它,但在SPServices頁面(http://spservices.codeplex.com/wikipage?title=GetListItems&referringTitle=Lists)中有記錄。它是:CAMLQueryOptions:「
- 1. 在Cocoa中獲取用戶的默認電子郵件地址
- 2. 在.NET中獲取當前用戶的電子郵件地址
- 3. 獲取Outlook 2007中當前用戶的電子郵件地址
- 4. 在Youtube上獲取用戶的電子郵件地址
- 5. 從給定的電子郵件地址獲取電子郵件地址DirectoryEntry
- 6. 無法獲取電子郵件地址
- 7. Facebook API獲取電子郵件地址
- 8. 從Samaccountname獲取電子郵件地址
- 9. 從facebook獲取電子郵件地址
- 10. 如何獲取Android用戶的電子郵件地址?
- 11. TeamCity如何獲取Subversion用戶的電子郵件地址?
- 12. Javamail - 如何獲取用戶的默認電子郵件地址?
- 13. 如何獲取Yii登錄用戶的電子郵件地址?
- 14. Outlook REST API - 獲取登錄用戶的電子郵件地址
- 15. 從Live SDK獲取用戶的電子郵件地址
- 16. 獲取Facebook用戶的公共電子郵件地址
- 17. 獲取用戶輸入的電子郵件地址
- 18. 如何在Yahoo郵件中獲取電子郵件地址?
- 19. 使用AngularFire獲取用戶電子郵件地址列表
- 20. 用Facebooker獲取用戶電子郵件地址?
- 21. 使用Google OpenID獲取用戶電子郵件地址
- 22. Powerbi用戶的電子郵件地址
- 23. 如何從電子郵件地址獲取電子郵件服務的網址
- 24. 從iPhone地址簿中獲取電子郵件地址
- 25. 從電子郵件地址獲取Twitter用戶ID
- 26. TweetSharp - 登錄後獲取用戶電子郵件地址
- 27. 如何根據電子郵件地址獲取Facebook用戶名?
- 28. 從活動域組獲取用戶電子郵件地址
- 29. 如何獲取電子郵件地址作爲用戶名每
- 30. Google Apps腳本 - 獲取用戶電子郵件地址
非常好。這有助於我獲得用戶的電子郵件,個人資料圖片等等。真棒。 – Rothrock