【发布时间】:2015-06-20 06:25:21
【问题描述】:
我一直试图让这个 ajax 调用工作几个小时,但未能解决任何可能的问题,因为一切似乎都根据jQuery Ajax Call 正确编码。据我所知,代码甚至没有被执行。但是,当我手动运行 API 调用时,我得到以下 JSON 结果:
<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("---------------------------------------------------------------------------");
}});
如前所述,从单步执行代码开始,它甚至没有进入成功或失败函数。我做错了什么?
【问题讨论】:
-
控制台在 Web 开发人员工具中显示哪些错误?第404章?
-
没什么,没有错误。调试器在调用的第一行之后完全绕过了 ajax 调用。
-
在 Chrome 调试器中打开网络选项卡,查看请求是否由浏览器发出
-
我使用 VS2013 进行了调试,看起来调用正在执行,但是在网站上,没有任何反应。
-
@RaviKumarMistry 有指定执行的条目,仍然没有返回数据。
标签: javascript c# jquery ajax json