当前位置: 首页 > 面试题库 >

Jqgrid 3.7在Internet Explorer中不显示行

苏华藏
2023-03-14
问题内容

我正在使用ASP.NET和Jqgrid 3.7进行测试,在firefox中它可以正常工作,但在IE中它不会在网格中显示任何行。

来自Web服务的响应是

{"d":
    {"__type":"jqGrid",
     "total":"1",
     "page":"1",
     "records":"10",
     "rows":[
         {"id":"180","cell":["180","Cultura"]},
         {"id":"61","cell":["61","Deporte"]},
         {"id":"68","cell":["68","Deporte"]},
         {"id":"5","cell":["5","Economía"]},
         {"id":"67","cell":["67","Economía"]},
         {"id":"76","cell":["76","Economía"]},
         {"id":"178","cell":["178","Economía"]},
         {"id":"4","cell":["4","Entrevista"]},
         {"id":"66","cell":["66","Entrevista"]},
         {"id":"78","cell":["78","Entrevista"]}
     ]
    }
}

电话是

myGrid = $("#list").jqGrid({
    url: 'ws/WsNoticias.asmx/jqObtenerTemas',
    datatype: 'json',
    mtype: 'GET',
    loadBeforeSend: function(XMLHttpRequest) {
        XMLHttpRequest.setRequestHeader("Content-Type", "application/json");
    },
    colNames: ['Id', 'Nombre'],
    colModel: [
        {name: 'Id', index: 'Id', width: 20, align: 'left', editable: false},
        {name: 'Nombre', index: 'Nombre', width: 200, align: 'left', editable: false}
    ],
    rowNum: 10,
    rowList: [5, 10, 200],
    sortname: 'Nombre',
    sortorder: "asc",
    pager: $("#listp"),
    viewrecords: true,
    caption: '',
    width: 600,
    height: 250,
    jsonReader: {
        root: "d.rows",
        page: "d.page",
        total: "d.total",
        records: "d.records"
    }
});

我看不到问题出在哪里…,使用3.6之前的版本以及

thegrid.addJSONData(JSON.parse(jsondata.responseText).d);

而不是jsonReader它可以工作。


问题答案:

首先,您应该只使用 URL中完整路径 (以http://或至少以/开头)。Internet
Explorer在很多情况下都使用相对URL会出错。

一些更小的一般性评论。您可以使用而ajaxGridOptions: { contentType: 'application/json; charset=utf-8' }不是loadBeforeSend。也可以删除其他一些默认值(请参阅http://www.trirand.com/jqgridwiki/doku.php?id=wiki:colmodel_options)。

myGrid = $("#list").jqGrid({
    url: 'http://www.ok-soft-gmbh.com/jqGrid/Jqgrid37json.txt',
    datatype: 'json',
    mtype: 'GET',
    ajaxGridOptions: { contentType: 'application/json; charset=utf-8' },
    colModel: [
        { name: 'Id', width: 20 },
        { name: 'Nombre', width: 200 }
    ],
    rowNum: 10,
    rowList: [5, 10, 200],
    sortname: 'Nombre',
    sortorder: "asc",
    pager: $("#listp"),
    viewrecords: true,
    width: 600,
    height: 250,
    jsonReader: {
        root: "d.rows",
        page: "d.page",
        total: "d.total",
        records: "d.records"
    }
});

此外,您可以将JSON数据简化为

{"d":
    {"__type":"jqGrid",
     "total":"1",
     "page":"1",
     "records":"10",
     "rows":[
         ["180","Cultura"],
         ["61","Deporte"],
         ["68","Deporte"],
         ["5","Economía"],
         ["67","Economía"],
         ["76","Economía"],
         ["178","Economía"],
         ["4","Entrevista"],
         ["66","Entrevista"],
         ["78","Entrevista"]
     ]
    }
}

并添加jsonReaderpoperty单元格的定义:“”:

jsonReader: {
    root: "d.rows",
    page: "d.page",
    total: "d.total",
    cell: "",
    records: "d.records"
}

您可以验证http://www.ok-soft-gmbh.com/jqGrid/Jqgrid37.htm和http://www.ok-soft-
gmbh.com/jqGrid/Jqgrid37Comact.htm
都可以正常工作标准的网络浏览器。



 类似资料:
  • 问题内容: 我的问题是我的ListView没有在GUI上显示任何内容,我添加了一个占位符进行测试,它的确显示了占位符文本,但除此之外我无法添加到列表中。 我的目标是要列出我所有客户帐户的列表,我已经包含了Account类,我想在ListView中显示所有帐户ID。 由于某些原因,它不起作用,我尝试仅输入随机数据只是为了查看是否是问题所在,但仍然不走运。 我的Main.class文件中有一个名为al

  • 我的数据确实显示在console.log中,但实际上没有显示在表中,我在这里做错了什么?

  • 我创建了一个动态web项目,以便通过Servlet显示JSP(我不能使用任何类似Spring的框架…)。默认情况下,我构建的类放在Build/classes中,因此在我将输出文件夹更改为WebContent/WEB-INF/classes后,我的应用程序运行良好。之后,我将该项目转换为Maven项目。(我不记得我上次使用servlet/JSP时需要更改输出文件夹,那是3年前!)。 无论如何,现在我

  • 我有这个模型: 我试图有一个表行[String-String-ComboBox with Strings]。所以我像这样设置表格: 但结果是,我在第三列中没有看到任何组合框应该包含值“1”和“3”。相反,我看到的是: 我缺少什么来显示组合框?谢谢

  • 数据显示在logcat中,但不显示在文本视图中。我能做什么 这是我的日志

  • 我是一个初学者一般反应和前端开发。这里有一个显示表格的“简单”代码。 错误如下: 警告:列表中的每个孩子都应该有一个唯一的“键”道具。 检查。看见https://banned-fb.example.com/react-warning-keys了解更多信息。在TableDataRow(在Table.js:30)在TableBody(在Table.js:44)在Table(在Table.js:42)在