【发布时间】:2016-03-27 14:21:46
【问题描述】:
我正在使用 asp.net Web 表单并尝试使用 AJAX 从 java 脚本函数调用 Web 服务方法,该函数返回一个带有车号和车号 ID 对的 JSON 数组 Web 方法驻留在 java 脚本功能页面的相同代码隐藏文件中 我使用调试器多次检查了 json 变量,并确保它包含一个有效的 JSON 数组 但是,当我在 FillLimoCars java 脚本函数中检查汽车对象时,我发现响应文本是一个空数组 我不确定为什么会发生这种情况,希望你们中的任何人都能够提供帮助
Java 脚本
function testButton(carModelID) {
$.ajax({
type: "POST",
url: baseURL + "WebPages/NewPages/ListCarRental.aspx/FillLimoCars",
data: "{CarModelID:'" + carModelID + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
complete: FillLimoCar
});
}
function FillLimoCar(cars)
{
var rdd_LimoCars = $find("<%=rdd_LimoCarNumber.ClientID %>");
var comboItem = new Telerik.Web.UI.RadComboBoxItem();
for(var i = 0; i < cars.length; i++)
{
;
}
}
C#
[WebMethod]
public static string FillLimoCars(int CarModelID)
{
try
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
List<LimoFleet> limos = carsBLL.GetCarModelLimoFleet(CarModelID);
List<object> objLimosList = new List<object>();
foreach(var limo in limos)
{
var limoObj = new
{
CarID = limo.CarID,
CarNumber = limo.CarNumber
};
objLimosList.Add(limoObj);
}
var json = serializer.Serialize(objLimosList);
return json;
//Context.Response.Write(objLimos.ToJson());
}
catch (Exception ex)
{
Tracer.Singleton.Log(ex);
return null;
}
}
【问题讨论】:
-
您是否检查过您的 FillLimoCars 函数以验证它是否返回了一个开头的值?
-
@Sergio 是的,正如我上面提到的,它返回了一个有效的 JSON 数组
标签: javascript c# json ajax