我正在尝试使用SP服务库(http://spservices.codeplex.com/)确定用户角色,但是我得到的responseXML.xml不是对象错误。
SPServices + JQuery都被正确引用。
代码:
<script type="text/javascript">
$(document).ready(function() {
$().SPServices({
operation: "GetRolesAndPermissionsForCurrentUser",
async: false,
completefunc: function(xData, Status) {
alert(xData.responseXML.xml);
var userPerm = $(xData.responseXML).find(" [nodeName=Permissions]").attr("Value");
alert("userPerm = " + userPerm);
}
});
});
</script>
答案 0 :(得分:1)
为什么尝试使用responseXML的属性?如果要访问原始XML标记,请使用xData的responseText属性。
我认为你使用上述功能的真正目标(获得许可)实际上是正常的,对吗?
responseXML是一个XML Document对象,根据浏览器的不同,可能有不同的结构。
答案 1 :(得分:0)
您使用的是jQuery 1.9.1吗?我是那种情况,这是一个错误。 https://bugs.jquery.com/ticket/13388
Ajax响应对象属性responseXML将是未定义的。而responseText包含原始XML响应。 引用较新的jQuery将正确填充responseXML。