Обработка ошибок загрузки данных в операциях Add, Edit, Del в JqGrid

Чтобы отобразить «свою» интерпретацию ошибки на сервере при выполнении операции Add, Del, Edit можно воспользоваться следующим «финтом ушами»: 1) на сервере генерируем ошибку, например 501 которую обрабатывает стандарный обработчик ошибок errorTextFormat:

php:

 header('HTTP/1.1 501 Internal Server Error'); 
                die("Не могу добавить пользователя! " . mysqli_error(Module::$sqln->idsqlconnection));

И код JavaScript на клиенте:

$("#list1").navGrid("#pager1",{
				search: true,
				add: true,
				edit: true,
				del: true,
				refresh: true
				},
				{errorTextFormat: commonError}, //edit options
				{errorTextFormat: commonError}, //add options
				{errorTextFormat: commonError}, //delete options
				{
					multipleSearch: true
					,closeAfterSearch: true
					,closeAfterReset: true									
				}
			);
...
function commonError(data) {
    console.log(data.responseText);
    return data.responseText;
}

 

Пишем свой плагин для Jquery

На примере самого примитивного действа — вывести при помощи плагина текст в определенное место.

html:

<div id="capcha" name="capcha"></div>

javascript:

jQuery.fn.Capcha = function(options) {      
            // воспользуемся расширением extend чтобы иметь "настройки по умолчанию"
            var settings = $.extend( {
                  'caption'         : 'Заголовок по умолчанию'                  
                }, options);    
            console.log(settings);              
            // не посредственно работа плагина
            this.html(settings.caption);         
            return this;
   
};

$(function() {      
    $("#capcha").Capcha({
       caption: "Hello World!"
    });
});