Вы можете использовать jQuery для создания нескольких элементов ввода. Так, если ваше поле, например, полное имя человека, вы можете использовать следующее
{ name: 'FullName', editable: true, edittype: 'custom', width: 300,
editoptions: {
custom_element: function(value, options) {
// split full name to the first and last name
var parts = value.split(' ');
// create a string with subelements
var elemStr = '<div><input id="'+options.id +
'_first" size="10" value="' + parts[0] +
'" /></br><input id="'+options.id + '_last' +
'"size="20" value="' + parts[1] + '" /></div>';
// return DOM element from jQuery object
return $(elemStr)[0];
},
custom_value: function(elem) {
var inputs = $("input", $(elem)[0]);
var first = inputs[0].value;
var last = inputs[1].value;
return first + ' '+ last;
}
}},
Это, конечно, необработанный фрагмент кода, и вы должны улучшить расположение элементов input
(например, значение атрибута size
). Показывает основную концепцию построения пользовательских элементов редактирования.
ОБНОВЛЕНО : если вы используете пользовательское редактирование , важно использовать параметр recreateForm: true
(см. http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing). См. jqgrid - установить custom_value типа редактирования : 'custom' для деталей.