jqGrid dataUrl未从服务器返回值

jqGrid dataUrl未从服务器返回值,jqgrid,Jqgrid,我使用dataUrl在jqGrid的编辑表单中填充我的下拉列表,但我并没有从服务器得到任何响应。我错过了什么?fiddler没有显示错误 编辑选项:{ dataUrl:CurrencySetting.aspx/GetDet, buildSelect:函数响应{ alertresponse.responseText; 变量数据=响应类型===字符串? $.parseJSONresponse.responseText:response; s=; s+='-'; $.eachdata,函数{ s+=+

我使用dataUrl在jqGrid的编辑表单中填充我的下拉列表,但我并没有从服务器得到任何响应。我错过了什么?fiddler没有显示错误

编辑选项:{ dataUrl:CurrencySetting.aspx/GetDet, buildSelect:函数响应{ alertresponse.responseText; 变量数据=响应类型===字符串? $.parseJSONresponse.responseText:response; s=; s+='-'; $.eachdata,函数{ s+=+this.CurrencyCd+ ; }; 返回s+; } } 服务器代码:

公共静态字符串GetDet { SysDataContext db=新的SysDataContext; var query=来自db.SysCurrencySettings中的SC 选择新的 { 货币学学士 }托利斯特先生; 返回JsonConvert.SerializeObjectquery; } HTTP响应

HTTP/1.1200ok 服务器:ASP.NET开发服务器/10.0.0.0 日期:2015年10月22日星期四格林威治标准时间11:10:23 X-AspNet-Version:4.0.30319 缓存控制:专用 内容类型:text/html;字符集=utf-8 内容长度:15497 连接:关闭
您应该始终编写您使用的jqGrid版本。您包含的HTTP响应只包含头,但不包含数据。似乎响应包含HTML代码而不是JSON数据。你能提供完整的答复吗。C代码不包含任何属性。通常至少使用[WebMethod]属性。您不使用editoptions的任何选项将contentType设置为application/json;charset=utf-8或application/json。字符串GetDet应替换为对象GetDet。您应该替换return JsonConvert.SerializeObjectquery;返回查询;请检查我如何更改您问题的代码格式,并在将来使用相同的格式。您应该更改buildSelect的代码,以设置value=attribute的相同值和:s+=+this.CurrencyCd+的文本@oleg:是的,即使在添加了{ajaxSelectOptions:{contentType:'application/json;charset=utf-8'}之后,代码仍返回页面的完整HTML代码。我确实更改了GetDet签名和选项值。很抱歉,我错过了[webmethod]属性。我不确定您在代码中添加了ajaxSelectOptions的确切位置。GetDet响应的HTML正文中有什么类型的文本?可能是错误消息还是CurrencyCd的响应编码错误?您应该包括有关您使用的代码的更多详细信息,其中可以看到ajaxSelectOptions,并且清除您使用的编辑模式。您应该始终包括您使用的jqGrid版本,因为jqGrid选项在不同版本中是不同的。