2015-06-20 73 views
0

我一直在试图让这个ajax呼叫工作几个小时,并没有能够解决任何可能的问题,因为一切似乎根据jQuery Ajax Call正确编码。从我可以告诉代码甚至没有被执行。然而,当我手动运行API调用我得到以下JSON结果:从ajax呼叫没有响应

<UnitsOfMeasure.UnitsOfMeasureDataWithMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Corporate.Web.API.DAL"> 
    <Message/> 
    <Success>true</Success> 
    <UnitOfMeasureBaseUnitItem i:nil="true"/> 
    <UnitOfMeasureBaseUnitList i:nil="true"/> 
    <UnitOfMeasureRelatedUnitItem i:nil="true"/> 
    <UnitOfMeasureRelatedUnitList i:nil="true"/> 
    <UnitOfMeasureSetItem i:nil="true"/> 
    <UnitOfMeasureSetList i:nil="true"/> 
    <UnitOfMeasureTypeItem i:nil="true"/> 
    <UnitOfMeasureTypeList i:nil="true"/> 
    <UsedForID>d64d99f9-acfa-44cd-a199-4557b7b20912</UsedForID> 
</UnitsOfMeasure.UnitsOfMeasureDataWithMessage> 

我API代码如下:

[Route("api/admin/UnitsOfMeasure/UnitOfMeasureDefaultUsedForGetID")] 
[HttpGet] 
[ResponseType(typeof(UnitsOfMeasure.UnitsOfMeasureDataWithMessage))] 
public IHttpActionResult UnitOfMeasureDefaultUsedForGetID(string UnitOfMeasureDefaultUsedForName) 
{ 
    UnitsOfMeasure _oUnitsOfMeasure = new UnitsOfMeasure(); 
    return Ok(_oUnitsOfMeasure.UnitsOfMeasureSet_GetUsedForID(UnitOfMeasureDefaultUsedForName)); 
} 

我DAL应该返回一个布尔标志和一个GUID。

我的Ajax调用如下:

$.ajax({ 
    type: "GET", 
    url: g_WebServiceUnitOfMeasureDefaultUsedForGetIDURL, 
    data: {"UnitOfMeasureDefaultUsedForName": "Purchase"}, 
    datatype: "json", 
    success: function(jsonResult){ 
     DefaultUnitUsedForID = jsonResult; 
    }, 
    failure: function (xhr, textStatus, errorThrown) { 
     console.log(xhr); 
     console.log("---------------------------------------------------------------------------"); 
     console.log(textStatus); 
     console.log("---------------------------------------------------------------------------"); 
     console.log(errorThrown); 
     console.log("---------------------------------------------------------------------------"); 
    }, 
    error: function (xhr, textStatus, errorThrown) { 
     console.log(xhr); 
     console.log("---------------------------------------------------------------------------"); 
     console.log(textStatus); 
     console.log("---------------------------------------------------------------------------"); 
     console.log(errorThrown); 
     console.log("---------------------------------------------------------------------------"); 
    }}); 

如上所述,从单步调试代码,它甚至没有进入成功或失败的功能。我究竟做错了什么?

+0

哪些误区控制台是否显示在Web开发人员工具中? 404? – jony89

+0

没什么,没有错误。在调用的第一行之后,调试器完全绕过ajax调用。 –

+1

在Chrome调试器中打开网络选项卡,并查看请求是否由浏览器发出 –

回答

0

可能是愚蠢的,但给它一拍

$.get(g_WebServiceUnitOfMeasureDefaultUsedForGetIDURL, 
{"UnitOfMeasureDefaultUsedForName": "Purchase"}) 
.done(function(data) { 
DefaultUnitUsedForID = jsonResult; 
alert("Data Loaded: " + data); 
}); 
+0

对不起,没有运气。 –

+0

jquery的版本是什么? –

+0

我正在使用2.1.4 –