jqGrid中的图像列?

我想在我的jQGrid中使用一个图像列,我使用了格式化程序,但是没有用,请给我解决方案。

我的代码如下:

jQuery(document).ready(function() { var TheGrid ; var resp; jQuery("#registerUsers").jqGrid({ url: 'EventsList.aspx', datatype: "json", colNames: ['Name', 'Company Name', 'Responsible Name', 'Date/Time', 'Id'], colModel: [{ name: 'GuestName', index: 'GuestName', width: 150, editable: true, editoptions: {readonly: true, size: 10} }, { name: 'CompName', index: 'CompName', width: 150, editable: false, editoptions: { readonly: true, size: 10} }, { name: 'RespName', index: 'RespName', width: 150, editable: false, editoptions: { readonly: true, size: 10} }, { name: 'RegisterDate', index: 'RegisterDate', width: 150, editable: false, editoptions: { readonly: true, size: 10} }, { name: 'Register_Id', index: 'Register_Id', width: 100, align: 'left', formatter: checkboxFormatter }, ], rowNum: 10, rowList: [10, 20, 30], pager: jQuery('#Userpager'), sortname: 'Register_Id', viewrecords: true, sortorder: "desc", imgpath: '/scripts/themes/steel/images', caption: "Registered Users" }); }); jQuery("#registerUsers").jqGrid('navGrid', '#Userpager', { edit: false, add: false, del: false }); function checkboxFormatter(el, cval, opts) { debugger; cval = cval + ""; cval = cval.toLowerCase(); // var bchk = cval.search(/(false|0|no|off|n)/i) < 0 ? " checked=\"checked\"" : ""; var UserId = jQuery("#registerUsers").getCell(RowId, 'Register_Id'); $(el).html(""); //  } 

请帮我

谢谢你里兹

你可以在格式化程序中将img标记作为字符串返回,例如:

 function unitsInStockFormatter(cellvalue, options, rowObject) { var cellValueInt = parseInt(cellvalue); if (cellValueInt > 10) return "" + cellvalue + ""; else if (cellValueInt > 0) return "" + cellvalue + ""; else return "" + cellvalue + ""; }; 

如下所述: http : //tpeczek.com/2009/11/jqgrid-and-aspnet-mvc-formatting.html

有关在单元格中显示图像的说明,请参阅can-you-have-images-or-any-custom-html-displayed-in-jquery-grid-jqgrid- cells。

基本上,看起来您可能需要从src元素中删除引号。

我找到了这个解决方案

如果在您的页面中通过插入脚本和样式表仅包括表格,并且在包含grid.php页面之后,您可以格式化单元格以这种方式显示图像:

将下面的代码放在grid.php中:

 $grid->setColProperty("COLUMN NAME", array("formatter"=>"js:formatImage")); 

然后,放入一个字符串变量,这个方式的formatImage函数的java脚本:

 $IMAGE_FORMAT_STRING = <<https://stackoverflow.com/questions/2288021/image-column-in-jqgrid/' + cellValue + ''; }else{ imageHtml = ''; } } return imageHtml; } function unformatImage(cellValue, options, cellObject) { return $(cellObject.html()).attr("originalValue"); } IMAGE_FORMAT_FUNCTION; 

在grid-> renderGrid之上,以这种方式设置JavaScript代码:

 $grid->setJSCode($IMAGE_FORMAT_STRING); 

我希望它对某人有所帮助!

可以直接从查询中获得一个简单的解决方案:

选择idres,’HTML-IMG-SRC = images / tick_’|| 保留|| ‘.png’作为保留,indate,从表中过时; – 查询postgres

保留的值为0或1,并在图像文件名“tick_1.png”或“tick_0.png”中反映,具体取决于字段的’reserved’值

希望能帮助到你