我正在使用jqwidgets 。
我正在尝试实现 JQxGrid。此时,我正在获取由linkrenderer javascript 变量返回的 Json 编码值,如下所示:
<a href="http://www.jqwidgets.com/edit/myid1">http://www.jqwidgets.com/edit/myid1</a>
<a href="http://www.jqwidgets.com/edit/myid2">http://www.jqwidgets.com/edit/myid2</a>
<a href="http://www.jqwidgets.com/edit/myid3">http://www.jqwidgets.com/edit/myid3</a>
但我希望“linkrenderer”返回如下结果:
<a href="http://www.jqwidgets.com/edit/myid1">myid1</a>
<a href="http://www.jqwidgets.com/edit/myid2">myid2</a>
<a href="http://www.jqwidgets.com/edit/myid3">myid3</a>
我将感谢您在这方面的帮助。
我的代码:
<script type="text/javascript">
$(document).ready(function () {
// prepare the data
var source =
{
datatype: "json",
datafields: [
{ name: 'CompanyName', type: 'string'},
{ name: 'ContactName', type: 'string'},
{ name: 'ContactTitle', type: 'string'},
{name: 'CustomerID',type:'string'},
],
url: 'data.php',
cache: false
};
var linkrenderer = function (row, column, value)
{
if (value.indexOf('#') != -1) {
value = value.substring(0, value.indexOf('#'));
}
value = "http://www.myurl.com/edit/" + value;
var format = { target: '"_blank"' };
var html = $.jqx.dataFormat.formatlink(value, format);
return html;
}
var dataAdapter = new $.jqx.dataAdapter(source);
$("#jqxgrid").jqxGrid(
{
width: 600,
source: dataAdapter,
theme: 'classic',
pageable: true,
autorowheight: true,
autoheight: true,
altrows: true,
columns: [
{ text: 'Company Name', datafield: 'CompanyName', width: 250},
{ text: 'ContactName', datafield: 'ContactName', width: 150 },
{ text: 'Contact Title', datafield: 'ContactTitle', width: 180 },
{ text: 'CustomerID', cellclassname: 'column', datafield: 'CustomerID', width: 180, cellsrenderer: (linkrenderer) },
],
ready: function () {
var rows = $('#jqxgrid').jqxGrid('getrows');
for (var i = 0; i < rows.length; i++) {
var currentCell = $('#jqxgrid').jqxGrid('getcellvalue', i, "CustomerID");
};
}
});
$.getJSON( dataAdapter, function( data ) {
var items = [];
$.each( data, function( key, val ) {
items.push( "<li id='" + key + "'>" + val + "</li>" );
});
$( "<ul/>", {
"class": "my-new-list",
html: items.join( "" )
}).appendTo( "#jqxgrid" );
});
});
</script>
</head>
<body class='default'>
<div id="jqxgrid"></div></body>