jQuery DataTables, разрабатываемые Codeigniter - PullRequest
2 голосов
/ 11 февраля 2011

Я использую jQuery DataTables с библиотекой DataTables Codeigniter для генерации данных. Эта библиотека является портом php-скрипта, предоставляемого DataTables.

Скрипт позволяет мне определить только несколько вариантов.

function datatables()
{
    $table = "purchase_orders";
    $columns = array("purchase_order_id", "sequence_id", "order_number", "aid");
    $index = "purchase_order_id";
    $this->load->library("Datatables");
    echo $this->datatables->generate($table, $columns, $index); 
}

Я хотел бы иметь возможность добавить столбец для некоторых "специфичных для строки" функций, таких как edit и delete, но библиотека DataTable не поддерживает предоставление массива данных.

Кажется, мой следующий вариант - это jQuery. Я полагаю, что мне нужно иметь один скрытый столбец, в котором хранится уникальный идентификатор строки, а затем добавить столбец для функций, специфичных для строки. Это кажется правильным?

Любые другие предложения или лучшие подходы было бы здорово услышать.

Спасибо, Петр

1 Ответ

3 голосов
/ 12 февраля 2011

Я использовал DataTables для нескольких проектов CI, но не использовал тот же подход, что и вы - я не использовал какую-либо библиотеку оболочек, а вместо этого передавал параметры через jQuery. Я думаю, что иногда этот подход лучше, так как средний уровень библиотеки CI может помешать, если он не обеспечивает полные параметры библиотеки javascript.

Вы можете предоставлять функции, специфичные для строки, разными способами - иметь столбец редактирования или столбец удаления со ссылкой на метод вашего контроллера для этой строки (например, '/ mycontroller / edit / 123'); или иметь столбец флажка со значением каждого из ваших идентификаторов и кнопок «действий» или формы выбора.

В зависимости от размера данных, я обычно использую функциональность ajax в DataTables и загружаю данные столбца через json - если вы включаете html и / или javascript в свои данные, просто убедитесь, что правильно их не выполняете. 1005 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...