在 Sharepoint 2013、.net 库或 REST 中,如何获取当前用户的区域设置?
in sharepoint 2013, .net library, or with REST, how do i get the regional settings of the current user?
我可以很容易地获取网络的区域设置,但是我该如何为当前用户做呢?
var regionalSettings = context.Web.RegionalSettings
有效,但 context.Web.CurrentUser
上没有 RegionalSettings
使用以下代码片段:
var url = _spPageContextInfo.webAbsoluteUrl+"/_layouts/regionalsetng.aspx?Type=User";
var lcid, cultureInfo, timeZone;
$.get(url,function(data){
$(data).find("select[name$='LCID'] option:selected").each(function(){
lcid = $(this).attr("value");
cultureInfo = $(this).text();
});
$(data).find("select[name$='TimeZone'] option:selected").each(function(){
timeZone = $(this).text();
});
alert(lcid + "::" + cultureInfo + "::" + timeZone);
});
更多信息:
http://sympmarc.com/2014/08/20/detecting-the-current-users-regional-settings-with-jquery/
我最后做了什么-
我需要时区来处理上传文件刚上传后的日期。由于请求当前用户和网络的 TimeZone
对象变得非常混乱并且花费了太多时间,我决定从文件修改后的 属性:
中得出时区
var fileModifiedDate = uploadedFile.ListItemAllFields.Modified;
return Math.round(moment.utc(fileModifiedDate).diff(moment.utc(), 'hours', true));
我可以很容易地获取网络的区域设置,但是我该如何为当前用户做呢?
var regionalSettings = context.Web.RegionalSettings
有效,但 context.Web.CurrentUser
RegionalSettings
使用以下代码片段:
var url = _spPageContextInfo.webAbsoluteUrl+"/_layouts/regionalsetng.aspx?Type=User";
var lcid, cultureInfo, timeZone;
$.get(url,function(data){
$(data).find("select[name$='LCID'] option:selected").each(function(){
lcid = $(this).attr("value");
cultureInfo = $(this).text();
});
$(data).find("select[name$='TimeZone'] option:selected").each(function(){
timeZone = $(this).text();
});
alert(lcid + "::" + cultureInfo + "::" + timeZone);
});
更多信息: http://sympmarc.com/2014/08/20/detecting-the-current-users-regional-settings-with-jquery/
我最后做了什么-
我需要时区来处理上传文件刚上传后的日期。由于请求当前用户和网络的 TimeZone
对象变得非常混乱并且花费了太多时间,我决定从文件修改后的 属性:
var fileModifiedDate = uploadedFile.ListItemAllFields.Modified;
return Math.round(moment.utc(fileModifiedDate).diff(moment.utc(), 'hours', true));