Tag: jqgrid

如何将jqGrid的编辑forms的位置设置为窗口的中心

我有jqGrid与编辑和添加表单,问题是显示jqGrid的左侧,而不是窗口的中心,我尝试了不同的方式,但没有得到,这里我的代码是.. $(document).ready(function () { jQuery(“#jQGridDemo”).jqGrid({ url: ‘http://localhost:52618/Sample/GetEmployeeDetails’, datatype: “json”, mtype: “POST”, colNames: [‘Eno’, ‘Ename’, ‘City’, ‘Salary’, ‘Address’, ‘Actions’], colModel: [ { name: ‘Eno’, index: ‘Eno’, width: 120, stype: ‘text’, height: 90, editable: true }, { name: ‘Ename’, index: ‘Ename’, width: 150, editable: true }, { name: ‘City’, index: ‘City’, width: 150, editable: true }, { […]

jqGrid抛出:未捕获的TypeError:无法读取未定义的属性“a”

我在SO上发现了其他一些基于Uncaught TypeError的问题,但没有找到这个问题,所以我想我会把它放在以防万一其他人遇到这个问题。 我的jqGrid工作得非常好但是我在控制台中看到这个错误: Uncaught TypeError: Cannot read property ‘a’ of undefined jquery.jqGrid.min.js:423 我检查过,这对应于jquery.jqGrid.src.js的第4364行 我的版本是jqGrid-4.4.0 一旦网格加载,我就会在网格填充数据之前得到错误。 我很担心即使它有效,因为我的大多数用户都在IE6上,IE甚至有时甚至是最愚蠢的javascript错误。 对此问题的任何forms的帮助将不胜感激。 PS:我认为在阅读类似的先前提问的问题之后我会添加一些东西。 我已经设置了root: “rows” 我已经设置了jsonReader : { repeatitems: false } 我返回到网格的JSON数据具有以下结构: {“total”: “1”, “records”: “0”, “rows”: [], “page”: “1”} 编辑:我也尝试了jqGrid-4.4.1这是最新版本。 仍然得到相同的错误。

我想通过单击jqGrid中的按钮来添加新列

我想在jqGrid中点击按钮添加新列。 以下是我用来定义网格的代码。 有人可以帮助我,如何定位新的列位置。 jQuery(“#list”).jqGrid({ datatype: “local”, height: 250, colNames:[‘Inv No’,’Date’, ‘Client’, ‘Amount’,’Tax’,’Total’,’Notes’], colModel:[ {name:’id’,index:’id’, width:60, sorttype:”int”,editable:false,editoptions:{readonly:true,size:10}}, {name:’invdate’,index:’invdate’, width:90, sorttype:”date”,editable:true,editoptions:{readonly:false,size:25}}, {name:’name’,index:’name’, width:100, editable:true,editoptions:{readonly:false,size:20}}, {name:’amount’,index:’amount’, width:80, align:”right”,sorttype:”float”, editable:true, editoptions:{readonly:false,size:20}}, {name:’tax’,index:’tax’, width:80, align:”right”,sorttype:”float”, editable:true,editoptions:{readonly:false,size:20}}, {name:’total’,index:’total’, width:80,align:”right”,sorttype:”float”, editable:true,editoptions:{readonly:false,size:20}}, {name:’note’,index:’note’, width:150, sortable:false, editable:true,editoptions:{readonly:false,size:20}} ], rowNum:10, rowList:[10,20,30], sortname: ‘id’, viewrecords: true, sortorder: “desc”, editCaption: “Edit Record”, caption: “Manipulating Grid Data”, editurl:”someurl.php” […]

默认情况下选中JqGrid的Row

我想默认设置一个jqgrid的行,并对此事件做一些事情。 可能吗 ? 我正在使用asp.net(C#)和Json

如何在高级搜索对话框中指定只读字段的值

我正在寻找一种方法,允许用户在最新的免费jqgrid中的高级搜索对话框中指定vlaue。 我尝试下面的代码并选择了高级搜索对话框。 税区是只读的,不能更改。 如何解决这个问题? Demonstrats loadFilterDefaults:true option .ui-datepicker { font-size: 76.39%; } $.jgrid = $.jgrid || {}; $.jgrid.no_legacy_api = true; <!—-> //.datepicker-dropdown”); if ($gBox.length > 0 && $datepicker.length > 0) { $datepicker.css(“top”, this.getBoundingClientRect().top + window.pageYOffset + $(this).outerHeight()); } }); } else { // use jQuery UI datepicker $elem.datepicker({ dateFormat: “dd-M-yy”, autoSize: true, changeYear: true, changeMonth: […]

视图上的jqGrid隐藏列取决于另一个列值

我想根据type的相应行的单元格值显示列session 。 session列已隐藏。 要隐藏session列,我在下面的代码片段中使用了 { name: ‘session’, index: ‘session’, hidden:true, editrules:{edithidden:true} }, 所以,我只想在view显示此列值。 如果type cell value等于Full ,我想在view隐藏session 。 否则,我想在view显示该session列值。 我尝试使用下面的代码, onSelectRow: function (id) { var celValue = $(‘#statGrid’).jqGrid(‘getCell’, id, ‘type’); if (celValue === ‘Full’) $(‘#statGrid’).jqGrid(‘getColProp’, ‘session’).editrules.edithidden = false; if (celValue === ‘Half’) $(‘#statGrid’).jqGrid(‘getColProp’, ‘session’).editrules.edithidden = true; } 一次,首先if条件获得成功, edithidden属性将更改为false 。 因此,它以Viewforms隐藏session 。 但是当我的第二个if条件成功时,我无法将该属性更改为true 。 为什么会这样? […]

如果在jqGrid中使用Oleg clickableCheckboxFormatter进行单击编辑,如何修复javascriptexception

Oleg留言 Forum 包含jqGrid的可点击复选框格式化程序。 如果使用单击内联编辑(在inSelectRow事件处理程序中启动内联编辑),则单击使用此格式化程序的复选框列会导致javascriptexception: c未定义 在jqGrid中getCellIndex方法: $(单元格)值是此格式化程序div,c变为未定义。 如何解决这个问题? 更新 铬也会发生同样的exception。 也许div被创建为body元素的直接子元素。 在这种情况下,我修补jqGrid返回-1: getCellIndex : function (cell) { var c = $(cell); if (c.is(‘tr’)) { return -1; } c = (!c.is(‘td’) && !c.is(‘th’) ? c.closest(“td,th”) : c)[0]; // AM next line added if removed single click editing in checkbox column click causes error if (c== undefined […]

jqGrd超链接或showlink

我正在使用jqGrid并想知道实现它的最佳解决方案。 我正在使用骨干和jQuery。 以下是所需的function 具有超链接的列。 它将是编辑/删除/自定义超链接。 点击链接,基本上它不应该导航只是调用一些function。 例如,在删除时,它将删除该行。 超链接列的数量是动态的。 超链接可以通过两种方式完成 1)使用showlink formatter或Customer formatter。 showlink问题是我们只能调用全局函数,我showlink在loadComplete函数中编写我的click事件逻辑。 因为我的网格是可重用的,并且不知道我将有超链接的列数。 所以我使用这样的自定义格式化程序 deleteLinkFmatter : function(cellvalue, options, rowObject) { return ”+ cellvalue + ”; } 上面代码的问题是,在backbone.js它说没有找到deleteRow 。 我发现在这个网站上提出了不同的方法,但都是徒劳的。 任何人都可以提出解决方案吗?

在jqgrid中调用ajax调用问题

我使用struts2-jquery-jqgrid插件构建了jqgrid 。 一切都很好,除了分页 , 问题:当我点击寻呼机中的下一个按钮时,我想执行一些基于ajax的操作。 我正在使用onPaging(jqgrid method)或onPagingTopics主题(jqgrid-plugins)来捕获分页事件。 我成功地获得了这个分页事件,但从这里开始实际问题。 当我点击下一个按钮时,我使用onPagingTopics 主题捕获分页事件,在此事件中我调用ajax-request,但在此ajax-request完成之前, jqgrid会自动重新加载 ,这就是我无法制作的原因ajax-call成功。 为什么会发生这种情况以及如何限制 jqgrid重新加载。 注意:我的jqgrid通过调用我在此网格中指定的url来 重新加载 。 你可以在这里检查网格如何在jqgrid中加载json 这就是我如何捕获分页事件: $.subscribe(‘paging’,function(event,data) { var search_string=$(“#searchString”).val(); var search_field=$(“#searchField”).val(); $.ajax({ url:”adminJsontable?searchString=”+search_string, dataType:”json”, success: function(jsondata,stat) { var mgrid = jQuery(“#gridtable”)[0]; mgrid.addJSONData(jsondata); } }); }); 更新部分: $.subscribe(‘before’,function(event,data) { var grid = jQuery(“#gridtable”); grid.jqGrid(‘setGridParam’,{url:”adminJsontable?searchString=”+”neo”}); }); 这就是我改变url的方式,但它无法正常工作。 通过这种方式,我可以获得准备,完成,成功等任何事件。 现在请指导我,我必须这样做。 注意:我可以使用jqgrid中使用的任何方法或任何事件,但不知道如何制作它。

如何配置此JQGrid列定义,以便对列表框条目的“显示”值执行排序,而不是“键”值?

我有一个可编辑的列定义,看起来像这样…… { name: ‘recType’, label: ‘recType’, index: ‘recType’, width: 100, fixed: true, keys: true, editable: true, edittype: “select”, editoptions: {value: rectypelist}, stype: ‘select’, formatter: ‘select’ } 注意:“rectypelist”是键:值对的列表…例如, 1:apple 4:pear 2:orange 3:banana 我需要能够通过列表框条目的值对该列进行排序(即,已经在列中正确显示) 。 在上面配置时,对列表框条目的“键”执行排序,而不是条目的“值”(条目的“值”是实际显示在网格中的值)。 – 因此,当用户对列进行排序时,他们没有收到预期的行为。 问题:如何配置此列定义,以便对列表框条目的“显示”值而不是“键”值执行排序? 谢谢你的帮助