Flexigrid работает в формате Json или XML.Для обоих типов они должны быть в определенном формате.
Формат XML должен быть точно таким:
<rows>
<page>1</page>
<total>2</total>
<row id="reg1">
<cell>reg1-cell1</cell>
<cell>reg1-cell2</cell>
</row>
<row id="reg2">
<cell>reg2-cell1</cell>
<cell>reg2-cell2</cell>
</row>
</rows>
На вашей стороне сервера вы должны проанализировать исходный XMLфайл и заново сгенерируйте этот конкретный формат XML.
Относительно проблемы сортировки: после нажатия на один из столбцов flexigrid отправляет несколько параметров в определенный url , как показано ниже:
$("#flex1").flexigrid({
url: 'staff.php'
});
Отправляет отсортированный столбец, порядок и многое другое.На стороне сервера вы получите переданные параметры для повторной сортировки строк.
Для получения дополнительной информации посетите страницу Документация .
Обновление: Допустим, у вас есть массив ( Customers ), в котором хранятся ваши данные.В этом случае мы создадим объект, который будет хранить ваши данные, но в формате Json следующим образом:
function formatCustomerResults(Customers){
var rows = Array();
for (i = 0; i < Customers.length; i++) {
var item = Customers[i];
rows.push({ cell: [item.CustomerId,
item.Name,
item.Phone,
item.Address]
});
}
return {
total: Customers.length,
page: 1,
rows: rows
};
}`
Затем вы вызовете вашу функцию:
$("#FlexTable").flexAddData(formatCustomerResults(eval(data)));