Searching is a way to search data (at server) on one or more field(s) at a time. When using this method we construct a modal form where the user can select a field and condition to apply the search. By default the search dialog is configured to use searching on multiple fields.
In order to change a option or event connected with the serching the following two methods should be used

setNavEvent
setNavOptions

with first parameter 'search'

By example if you want that the modal window should be not draggable do this

$grid->setNavOptions('search',array("drag"=>false));

This method uses the following properties from language file grid.locale-xx and the can be passed in the options array of the serch method

$.jgrid = { ... search : { caption: "Search...", Find: "Find", Reset: "Reset", odata : ['equal', 'not equal', 'less', 'less or equal','greater','greater or equal', 'begins with','does not begin with','is in','is not in','ends with','does not end with','contains','does not contain'], groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ], matchText: " match", rulesText: " rules" }, ...

Option

Type

Description

Default

afterShowSearch

function

This event fires (if defined) every time after the search dialog is shown

null

beforeShowSearch

function

This event fires (if defined) every time before the search dialog is shown

null

drag

boolean

Enables or disables draging of the modal

true

caption

string

The caption of the modal

see lang file

closeAfterSearch

boolean

If set to true this closes the search dialog after the user apply a search - i.e. click on Find button

false

closeOnEscape

boolean

If set to true the dialog is closed when the user pres ESC key

false

Find

string

The text in the find button

see lang file

groupOps

array

translations strings used in advanced searching

see lang file

matchText

string

Translation text used in advanced searching

see lang file

multipleSearch

boolean

If set to true this activates the advanced searching

false

odata

array

Translation strings that corresponds to the sopt options

see lang file

onClose

function

If defined this event fires when the dialog is closed. Can return true or false. If the event return false the dialog will not be closed

null

onInitializeSearch

function

This event occurs only once when the modal is created

null

recreateFilter

boolean

When set to true the entry filter is destroyed unbinding all the events and it is constructed again. Use this option if you change dynamically some properties in colModel, so that they have effect

false

Reset

string

The text for the clear (reset) button

see lang file

rulesText

string

Translation text used in advanced searching

see lang file

sField

string

See sopt description

searchField

sFilter

string

Aplicable to multiple searching.

filters

sOper

string

See sopt description

searchOper

sopt

array

Use this option to set common search rules. If not set all the available options will be used. All available option are: ['eq','ne','lt','le','gt','ge','bw','bn','in','ni','ew','en','cn','nc'] The corresponding texts are in language file and mean the following: ['equal','not equal', 'less', 'less or equal','greater','greater or equal', 'begins with','does not begin with','is in','is not in','ends with','does not end with','contains','does not contain'] Note that the elements in sopt array can be mixed in any order.


sValue

string

See sopt description

searchString

The searchoptions that can be set in colModel contain the following properties

Property

Type

Description

dataUrl

string

This option is valid only for the elements of type select - i.e stype:'select'. The option represent the url from where we load the select element. When this option is set the element will be filled with values from the ajax request. The data should be a valid html select element with the desired options. By example the request should contain <select><option value=“1”>One</option> <option value=“2”>Two</option></select>. This is called only once.

buildSelect

function

This option have sense only if the dataUrl parameter is set. In case where the server response can not build the select element you can use your on function to build the select. The function should return a string containing the select and options value(s) as described in dataUrl option. Parameter passed to this function is the server response

dataInit

function

If set this function is called only once when the element is created. To this function we pass the element object.
dataInit: function(elem) {
do something
}
Also use this function to attach datepicker, time picker and etc. Example:
dataInit : function (elem) {
$(elem).datepicker();
}

dataEvents

array

List of events to apply to the data element; uses $(”#id”).bind(type, [data], fn) to bind events to data element. Should be described like this:
dataEvents: [
{ type: 'click', data: { i: 7 }, fn: function(e) { console.log(e.data.i); }},
{ type: 'keypress', fn: function(e) { console.log('keypress'); } }
]

attr

object

attr is object where we can set valid attributes to the created element. By example:
attr : { title: “Some title” }
Will set a title of the searched element

searchhidden

boolean

By default hidden elemnts in the grid are not searchable . In order to enable searching when the field is hidden set this option to true

sopt

array

This option is used only in advanced single field searching and determines the operation that is applied to the element. If not set all the available options will be used. All available option are:
['eq','ne','lt','le','gt','ge','bw','bn','in','ni','ew','en','cn','nc']
The corresponding texts are in language file and mean the following:
['equal','not equal', 'less', 'less or equal','greater','greater or equal', 'begins with','does not begin with','is in','is not in','ends with','does not end with','contains','does not contain']
Note that the elements in sopt array can be mixed in any order.

defaultValue

string

If not empty set a default value in the search input element.

value

mixed

The option is used only for stype select and defines the select options in the search dialogs. When set for stype select and dataUrl option is not set, the value can be a string or object.
If the option is a string it must contain a set of value:label pairs with the value separated from the label with a colon (:) and ended with(;). The string should not ended with a (;)- editoptions:{value:“1:One;2:Two”}.If set as object it should be defined as pair name:value - editoptions:{value:{1:'One';2:'Two'}}