Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

wiki:render-basic [2012/04/08 18:07]
wildraid
wiki:render-basic [2012/04/08 18:08] (текущий)
wildraid
Строка 67: Строка 67:
  
 Все эти части собираются вместе в одну строку и возвращаются функцией render. Все эти части собираются вместе в одну строку и возвращаются функцией render.
- 
- 
-===== Опции рендеринга ===== 
- 
-jqGrid содержит большое количество [[http://​www.trirand.com/​jqgridwiki/​doku.php?​id=wiki:​options|опций]]. 
- 
-Существует несколько способов их указать. Каждый последующий способ переписывает аналогичные значения,​ указанные в предыдущих. 
- 
-=== 1. $.jgrid.defaults (Javascript) === 
- 
-Опции по умолчанию для всех таблиц. Должны быть заданы после подключения всех остальных скриптов,​ но до всего остального. 
- 
-Например:​ 
- 
-<code javascript>​ 
-$.extend($.jgrid.defaults,​ 
-{ 
- datatype: '​json',​ 
- mtype: '​POST',​ 
-  
- altRows: false, 
- altclass: '​altrow'​ 
-}); 
-</​code>​ 
- 
-=== 2. $this->​options (PHP) === 
- 
-Любые опции, заданные в виде массива в методе init.\\ 
-При помощи объекта jqGrid_Data_Raw можно указывать даже javascript функции,​ но, в большинстве случаев,​ не рекомендуется это делать. 
- 
-Например:​ 
- 
-<code php> 
-$this->​options = array( 
-    '​witdth'​ => 500, 
-    '​multiselect'​ => true, 
-    '​rowList' ​    => array(10, 20, 30), 
-    '​onSelectRow'​ => new jqGrid_Data_Raw('​function(id){alert("​Selected row: " +id);​}'​),​ 
-    '); 
-); 
-</​code>​ 
- 
-=== 3. Метод renderGridOptions (PHP) === 
- 
-Функция вызывается в последний момент перед рендерингом и дает последний шанс изменить опции таблицы.\\ 
-Это полезно в том случае,​ если опции должны создаваться динамически,​ и вам не хочется загружать функцию init, которая,​ в отличие от renderGridOptions,​ вызывается при любом обращение к таблие,​ а не только при рендеринге. 
- 
-Например:​ 
- 
-<code php> 
-protected function renderGridOptions($opts) 
-{ 
-    // dynamic caption 
-    $opts['​caption'​] = "User stat on " . date('​d.m.Y'​);​ 
-    return $opts; 
-} 
-</​code>​ 
- 
-=== 4. Второй аргумент render (Javascript) ​ === 
- 
-Во втором аргументе при вызове render можно указать имя javascript переменной,​ содержащей объект с опциями для таблицы. 
- 
-Например:​ 
- 
-<code javascript>​ 
-//JS functions in JS code - recommended way 
-var opts = { 
-    width: 650, 
-    rowList: [15, 30], 
-    onSelectAll:​ function() 
-    { 
-        alert("​All rows selected!"​);​ 
-    } 
-}; 
- 
-<?​=$jq_loader->​render('​jq_render_1',​ '​opts'​);?>​ 
-</​code>​ 
- 
-Этот метод наиболее предпочтителен. 
- 
-===== Опции навигатора ===== 
- 
-Вы можете полностью отказаться от автоматического рендеринга навигатора,​ установив 
-<code php> 
-$this->​nav = null; 
-</​code>​ 
- 
-Опции навигатора очень похожи на опции таблицы. Порядок перезаписи следующий:​ 
-  - $.jgrid.nav (JS) 
-  - $this->​nav (PHP) 
-  - renderNav (PHP) 
- 
- 
-Для указания опций редактирования,​ добавления,​ удаления,​ поиска и т.д. $this->​nav используются специальные ключи: 
-  * prmEdit 
-  * prmAdd 
-  * prmDel 
-  * prmSearch 
-  * prmView 
- 
-Их названия говорят сами за себя. 
- 
-Например:​ 
-<code php> 
-$this->​nav = array( 
-    '​add'​ => true,  
-    '​edit'​ => true,  
-    '​del'​ => true, 
-    '​prmAdd'​ => array('​width'​ => 600), 
-    '​prmEdit'​ => array('​width'​ => 720), 
-); 
-</​code>​