Я хочу объединить некоторые данные (от 3 адресных столбцов до 1 столбца), которые я получаю через JSONP из таблиц Fusion, в jqGrid.
Кто-нибудь знает, возможно ли это / как это сделать? К сожалению, API-интерфейс Fusion Tables в настоящее время не поддерживает CONCAT с помощью команд SELECT.
Олег предоставил код для двух основных столбцов, если у одного были длинные данные, но я на самом деле хочу взять данные из нескольких столбцов и представить их как один столбец в jqGrid
Заранее спасибо
редактировать, добавлен фрагмент кода:
datatype: "jsonp", // "json" or "jsonp"
colNames: ["id","lat","long","Name","Address","","","Postcode"],
colModel:[
{name:'id',index:'id',key:true,sorttype:'int',hidden:true,sortable:true},
{name:'latitude',index:'latitude',hidden:true},
{name:'longitude',index:'longitude',hidden:true},
{name:'name',index:'name',width:170,sortable:false,sorttype:'text'},
{name:'address_line_1',index:'address_line_1',width:400,formatter:function (cellvalue, options, rowObject) {
addPart1 = rowObject[4];
addPart2 = rowObject[5];
addPart3 = rowObject[6];
fullAddress = addPart1 + addPart2 + addPart3;
return fullAddress;},sortable:false,sorttype:'text'},
{name:'address_line_2',index:'address_line_2',sortable:false,sorttype:'text',hidden:true},
{name:'address_line_3',index:'address_line_3',sortable:false,sorttype:'text',hidden:true},
{name:'postcode',label:'postcode',width:80,sortable:false,sorttype:'text'}
],
jsonReader: {
cell: "", // the same as cell: function (obj) { return obj; }
root: "table.rows",
page: function (obj) { return 1; },
total: function (obj) { return 1; },
records: function (obj) { return obj.table.rows.length; }
},
Вот общий пример общедоступных данных из таблицы .gov (моя таблица в основном такая же настройка). Я приведу вопрос в порядок позже, чтобы люди могли легко увидеть вопрос / ответ:)
<script type="text/javascript">
var queryText = "SELECT * FROM 185189";
jQuery(document).ready(function() {
jQuery("#rTable").jqGrid({
url: 'http://www.google.com/fusiontables/api/query?sql=' +
encodeURI(queryText) + '&jsonCallback=?',
postData: "",
datatype: "jsonp",
colNames: ["col1","col2","col3","col4"],
colModel:[
{name:'FACID',index:'FACID',key:true,sorttype:'int',sortable:true},
{name:'FACNAME',index:'FACNAME'},
{name:'FAC_ADDRESS1',index:'FAC_ADDRESS1',sortable:false,sorttype:'text'},
{name:'FAC_ADDRESS2',index:'FAC_ADDRESS2',sortable:false,sorttype:'text'}
],
jsonReader: {
cell: "",
root: "table.rows",
page: function (obj) { return 1; },
total: function (obj) { return 1; },
records: function (obj) { return obj.table.rows.length; }
},
rowNum:10,
rowList:[10,20,30],
pager: '#pager2',
sortname: 'name',
sortorder: "asc",
viewrecords: true,
loadonce: true,
height: "100%",
multiselect: true,
caption: ""
}); // END CREATE GRID
jQuery("#rTable").jqGrid('navGrid','#pager2',{edit:false,add:false,del:false}); // paging options
});
</script>