Я слежу за веб-ресурсом HTML, мне нужно получить идентификатор контакта, а затем выполнить все остальное. Он подсказывает мне, что у меня есть 1 контакт с этим конкретным номером телефона, но он выдает исключение в retreivedContact (переменная в следующем javascript). Когда я подхожу и проверяю, отладчик mobileNumber также говорит, что его undefined. Не могли бы вы увидеть и сообщить мне, что здесь не так?
<!DOCTYPE html>
<html>
<head>
<title>Contacts</title>
<script type = "text/javascript" src = "ClientGlobalContext.js.aspx"></script>
<script type = "text/javascript" src = "../WebResources/new_jquery_1.9.1.min" ></script>
<script type = "text/javascript" src = "../WebResources/new_xrmjson" ></script>
<script type = "text/javascript" src = "../WebResources/new_xrmservicetoolkit" ></script>
<script type = "text/javascript">
function getLoggedInUserRoles() {
try {
debugger;
var context = GetGlobalContext();
var mobileNumber = "xxx-xxx-xxx";
if (mobileNumber.length > 0) {
var query = "<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false'>" +
" <entity name='contact'>" +
" <attribute name='fullname' />" +
" <attribute name='telephone1' />" +
" <attribute name='contactid' />" +
" <order attribute='fullname' descending='false' />" +
" <filter type='and'>" +
" <condition attribute='mobilephone' operator='eq' value='" + mobileNumber + "'/>" +
" </filter>" +
" </entity>" +
"</fetch>";
var retreivedContacts = XrmServiceToolkit.Soap.Fetch(query);
if (retreivedContacts.length == 1) {
alert(retreivedContacts.length);
alert(retreivedContacts[0].attributes['contactid']);
//Xrm.Utility.openEntityForm("contact", retreivedContacts[0].attributes['contactid'])
}
}
} catch (e) {
alert("Error: "+e.Message);
}
}
</script>
</head>
<body>
<button onclick = "getLoggedInUserRoles()">Click here</button>
</body>
</html>
Я использую два оповещения. Первое оповещение говорит о том, что у меня есть один контакт, совпадающий с номером мобильного телефона. Во время второго предупреждения он говорит, что retreivedContacts не определен
Теперь это решено, мне не хватало ".value" с оператором retreivedContact, он работает как шарм. Спасибо @JamesWood за то, что уделили время
@MohsinAli, вы должны опубликовать это как ответ



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Это решено, я изменяю следующий фрагмент
alert(retreivedContacts[0].attributes['contactid']);
к
alert(retreivedContacts[0].attributes['contactid'].value);
Было бы полезно, если бы вы разместили сообщение об исключении и код, вызывающий исключение.