$.ajax({
type: "post",
contentType: "application/json",
url: /DCSRequestName.asmx/GetName",
data: "{str:'" + $("#txtName").val() + "'}",
dataType: "json",
success: function (result) {
$("#lstAgent").empty();
if (result.d != null){ $.each(result.d, function (index, data) {
$("#lstAgent").append("<option value='" + index + "'>" + data + "</option>");
if ($("#txtName").val() == data)
$("#lstAgent").val(index);
});
$("#lstAgent").attr("size", $("#lstAgent option").length + 1);
$("#lstAgent").show();
}
else
$("#lstAgent").hide();
}
});
服务端的webservice返回的是Dictionary<int,string> 有数据的时候返回{“d”,{....等等,}}能正常读取。当DIC……为空是返回的是{"d",{}},怎么判断result.d是否有值?if (result.d != null)不行,
你看下你接收到的数据的格式(查看http请求可以看到)
如果是string 类型,需要result=eval('(+result+)'); 转成Json格式
如果得到的是Json格式,使用
if(result.d)
{
}
就应该没有问题了
if(result.d.length>0)
{
....
}else{
.....
}