This is english version for this post

Why do we need new search panel for jqGrid?



jqGrid has 4 tools for a searching:

  1. The search option for grid footer. You will have icon in footer grid. Then you click this icon, the search dialog will be displayed. Limitations! It has just one field for search. This field is input (text). There is common set of operators.
  2. The following construction
          jQuery("#mysearch").filterGrid("#grid_id",{...})

    It make search bar in mysearch place. Limitations! Panel has static set of controls. User can not add or remove controls from panel. Each condition go to server in separate post-parameters. It is bad for server-side code. Json will be better.

  3. The multipleSearch option for grid footer. It is just like point 1, but here user can add or remove any conditions in dialog. Limitations! All fields are input (text). There is common set of operators for each field.
  4. The search toolbar.
          jQuery("#toolbar").jqGrid('filterToolbar', {stringResult: true});

    Limitations! All fields are input (text). All conditions use logic operator “equal”.

As you see, all search tools have limitations. I made new search tool - smartSearchPanel. It has not such limitations. Далее… »

Tags: ,

Почему возникла необходимость в рассматриваемом компоненте?



Для jqgrid существует 4 вcтроенных механизма фильтрации данных

  1. Опция search:true в параметрах футера грида. Выражается в появлении иконки в футере, по нажатию на которую появляется диалог поиска по одному полю. Минусы в том, что поле только одно, используется текстовое поле для задание искомой величины и набор операторов универсален (общий) для всех полей.
  2. Конструкция
    jQuery("#mysearch").filterGrid("#grid_id",{...})

    Она создает на странице в месте элемента “#mysearch” поисковую панель. Набор полей в панели и элементов управления для них статичен и определяется по colModel или по специальной опции filterModel. Минус в статичности панели (пользователь не может менять набор полей) и в том, что поисковые условия посылаются в отдельных post-параметрах, а не в json-массиве. Это плохо ложится на концепцию универсального источника данных (server-side) для грида. Так же используется только один оператор сравниения для всех условий (равно).

  3. Опция multipleSearch:true футера грида. В футере появляется кнопка поиска, по нажатию на которую появляется диалог. В этом диалоге можно добавлять поисковые условия и объединять их всех условием OR или условием AND. Минус данной возможности в том, что как элемент управления для задания значений поиска используется только текстовое поле. Операторы сравления тоже всегда одинаковые.
  4. Поисковый toolbar.
    jQuery("#toolbar").jqGrid('filterToolbar', {stringResult: true});

    Его минус в использовании тестовых полей и постоянного оператора справления (равно). Все условия объединяются одним только общим (AND).

Как мы видим все 4 механизма поиска имеют ряд недостатков. Эти недостатки и призван решить новый компонент smartSearchPanel.
Далее… »

Tags: ,

Однажды мы рассматривали установку и использование ZendDebugger для отладки php-кода в PDT Eclipse. Сейчас настал черед отладчика XDebug. XDebug позволяет не только работать в связке с IDE, но и имеет php-функции для профайлинга, вывода отладочной информации на страницах и другие интересные особенности. Подробную информацию вы сможете найти на официальном сайте XDebug. А в этом блоге будет обзор наиболее значимых возможностей этого отладчика. Давайте начнем с установки XDebug, как подготовительного шага перед знакомством с его возможностями.
Далее… »

Tags: , ,

При настройке серверов часто приходится прибегать к такой замечательной вещи как ssh. Однако при нестабильном интернет-соединении операция, которая выполнялась во время обрыва соединения будет прервана. Для некоторых задач после этого вам придется не только запустить задачу снова, но и произвести чистку (базы данных, файловой системы) после предыдущей (прерванной) задачи. Таким образом ваше потерянное время увеличивается. Это не то, что вы любите, не так ли?
Далее… »

Tags: ,

Если вы много лет занимались только web-программированием и вдруг возникает потребность в написании чего-то не слишком большого десктопного с GUI, то скорее всего вы поймете, что забыли языки, среды на которых некогда вы сдавали настольные приложения. Было бы хорошо, если бы можно было накидать несложное приложение с GUI и на php. Такую возможность дает библиотека php-gtk, о которой и пойдет речь в данной заметке. Далее… »

Tags: