Я пытаюсь реализовать jqGrid в asp.net.
Вот мой код.
<script type="text/javascript" src="../js/i18n/grid.locale-en.js"></script>
<script type="text/javascript" src="../js/jquery.jqGrid.min.js"></script>
<script type="text/javascript" src="../js/jquery.jqGrid.src.js"></script>
<script src="../js/plugins/grid.postext.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
jQuery("#tdList").jqGrid({
type: "POST",
datatype: function() {
$.ajax
({
url: "WebService1.asmx/GetDataFromDB",
data: "{}",
datatype: 'json',
contentType: "application/json; charset=utf-8",
});
},
height: "100%",
width: "100%",
forceFit: true,
colNames: ['EmpID', 'Name', 'MGR'],
colModel: [
{ name: 'EmpID', index: 'EmpID', key: true, hidden: true },
{ name: 'Name', index: 'Name', width: 100 },
{ name: 'MGR', index: 'MGR', width: 100 }
],
rowNum: 10,
rowList: [5, 10, 15],
pager: $('#pager'),
sortname: 'EmpID',
viewrecords: true,
sortorder: "desc",
caption: "Customer List"
}).navGrid('#pager', { del: false, add: false, edit: false });
});
и код позади
namespace JqGrid_App{
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
[System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
[WebMethod(EnableSession = false)]
[ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)]
public string GetDataFromDB()
{
_Default OGetData = new _Default();
return OGetData.GetDataFromDB();
}
}}
Возвращаемый JSONData имеет формат
{
"total":1,
"page":1,
"records":1,
"rows":[
{"id":"6","cell":["Robbie","2"]}
]
}
Но сетка не является обязательной для данных.
Пожалуйста, помогите. Что я здесь не так делаю. Я пытаюсь исправить это за последние 2 дня.
С наилучшими пожеланиями,
MLG