Я думаю, что вы хотите, должно быть достижимо довольно легко. Я сделал тебе быструю копирование-вставку / кражу вместе.
Если щелкнуть столбец «Дата», вы получите селектор календаря.
Если вы щелкнете по столбцу «Клиент» и удалите содержимое, вы увидите автозаполнение (css не подходит для быстрой вставки), в котором перечислены американские города (я знаю, что города - это не названия клиентов, а просто демо).
Код взят из jqGrid Демонстрационная страница редактирования ячейки + Автозаполнение jQuery Демонстрационная страница
http://jsbin.com/owatu (добавьте /edit
к URL, чтобы увидеть код)
Конечно, демо немного грубовато по краям
- проблемы css
- быстрый взлом в afterSaveCell вставлен, чтобы получить jQgrid для вставки выбранного значения из автозаполнения, если пользователь использует клавиши со стрелками + клавиша ввода с мышью, он работает без взлома
Я полагаю, что хак afterSaveCell может быть удален при чистой интеграции автозаполнения и jqGrid друг с другом.
В основном это сводится к
jQuery("#celltbl").jqGrid({
...
{name:'name', width:100, editable:true}, //e.g.
...
afterEditCell: function (id,name,val,iRow,iCol) {
if(name=='name') {
//cities here is local json object
jQuery("#"+iRow+"_name","#celltbl").autocomplete(cities);
}
},
afterSaveCell : function(rowid,name,val,iRow,iCol) {
if(name == 'name') {
jQuery("#celltbl").jqGrid('setRowData',rowid,{name:jQuery(".ac_over").text()});
jQuery(".ac_results").remove();
}
}
...