在SharePoint 2010 Foundation中工作時,我試圖爲不是特定成員的用戶在自定義editform.aspx上禁用字段組。如果用戶不是指定的SharePoint組的成員,則使用SPServices禁用字段
因此,如果當前用戶不是「變更控制 - 管理員」組的成員,請禁用CCID字段。
我發現似乎是SPServices codeplex討論區中的解決方案,但它無法按預期工作。不知道我在這裏錯過了什麼。
它會禁用正確的字段,但如果當前用戶位於指定組中,則無關緊要。
如果我改變了:
如果($(xData.responseXML).find( 「本集團[名稱= '變更控制 - 管理員']」)長度= 1。!)
本:
如果($(xData.responseXML).find( 「本集團[名稱= '變更控制 - 管理員']」)長度== 1)
...然後領域沒有得到禁用。但是,如果當前用戶在指定組中,則無關緊要。
任何幫助將不勝感激。
這裏是我的代碼:
<script language="javascript" type="text/javascript" src="/CodeLibrary/jquery-1.7.2.min.js"></script>
<script language="javascript" type="text/javascript" src="/CodeLibrary/jquery.SPServices-0.7.2.min.ssl.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
var groupName;
$().SPServices({
operation: "GetGroupCollectionFromUser",
userLoginName: $().SPServices.SPGetCurrentUser(),
async: false,
completefunc: function(xData, Status) {
//if current user is not a member of this group...
if($(xData.responseXML).find("Group[Name='Change Control - Admins']").length != 1)
{
//...disable the following fields
$("input[Title='CCID']").prop("disabled", "disabled");
}
}
});
});
function PreSaveAction() {
$("input[Title='CCID']").removeProp("disabled");
return true;
}
</script>