1

我的页面使用 ajax 调用来获取用户名。我在 Fiddler 中看到了响应,但它仍然会引发错误。

这是我的代码:

$.ajax({
               type: "POST",
               url: "Selection.aspx/GetUser",
               data: "{}",
               contentType: "application/json; charset=utf-8",
               dataType: "json",
               success: function (response) {
                   var username = response.d;
                   if (username.indexOf("ERROR") > 0) {
                       jAlert(username);
                   }
                   else
                   {
                       if( username!= "" ) 
                       {
                           $("#MainContent_lblUser").text(username);
                       }
                   }
                },
               error: function (xhr, status, error) {
                   if (xhr.responseText != "") {
                       var err = eval("(" + xhr.responseText + ")");
                       jAlert(err.Message);
                   } else
                       jAlert('Unable to get an User', 'Ajax Error', null);
               }
           });

我总是看到“无法获取用户”的警报。在提琴手我看到 {"d":"Domain\crm.admin"}

任何帮助,将不胜感激。

4

1 回答 1

0

确保您确实返回了一个 JSON 对象。如果您不确定,请编辑 dataType 规范并在成功回调中添加一些额外的代码;例如:

$.ajax({
               type: "POST",
               url: "Selection.aspx/GetUser",
               data: "{}",
               contentType: "application/json; charset=utf-8",                  
               success: function (response) {
                   newResponse = jQuery.parseJSON(response);
                   var username = newResponse.d;
                   if (username.indexOf("ERROR") > 0) {
                       jAlert(username);
                   }
                   else
                   {
                       if( username!= "" ) 
                       {
                           $("#MainContent_lblUser").text(username);
                       }
                   }
                },
               error: function (xhr, status, error) {
                   if (xhr.responseText != "") {
                       var err = eval("(" + xhr.responseText + ")");
                       jAlert(err.Message);
                   } else
                       jAlert('Unable to get an User', 'Ajax Error', null);
               }
           });

我希望这有帮助

于 2013-07-31T05:43:15.543 回答