Estoy tratando de completar una de las columnas usando el cuadro de selección en jqgrid. A continuación se muestra el código.
$(document).ready(function(){ $("#grid").jqGrid({ url: "./info", datatype: "json", mtype: "GET", ajaxSelectOptions:{ type: "GET", dataType: "json", success: function (result) { console.log(result); } }, colNames: ["DeptId", "DeptName", "StuId", "StuName", "StuDoj"], colModel: [ { name: "deptId", hidden:true }, { name:"deptName", width:90, editable:true, edittype:'select', formatter:'select', editoptions:{ dataUrl:'./getDepts', buildSelect: function(res){ console.log(res); var s='<select id="dept" name="dept">' $.each(res,function(idx,obj){ $('#dept') .append($('<option>', { value : obj.deptId }) .text(obj.deptName)); }); return s+"</select>"; } }}, { name: "studentId", hidden:true }, { name: "studentName", width: 80,editable:true }, { name: "studentDoj",width: 90,editable:true } ], pager: "#pager", rowNum: 5, rowList: [5, 10, 20], sortname: "empId", sortorder: "asc", sortable:true, viewrecords: true, gridview: true, caption: "MyGrid", jsonReader: { repeatitems: false, id: "empId", root: function (obj) { return obj; }, page: function (obj) { return 1; }, total: function (obj) { return 1; }, records: function (obj) { return obj.length; } } }); $("#grid").jqGrid('navGrid','#pager',{add:false,view:true,search:true});})
En editOptions para colModel 'deptName', no se llama a dataUrl para completar el cuadro de selección. El jqgrid se completa con /info resturl, que obtiene el nombre del departamento de un estudiante en particular. Quiero que el nombre del departamento sea del tipo cuadro de selección y su valor debe ser el mismo que el nombre del departamento obtenido mediante la URL de descanso de información
Debería llamarse, pero sus datos se llenarán más nuevos, ya que sobrescribe la función de éxito en ajaxSelectOptions.
Para obtener una respuesta, comente la función de éxito o elimínela.
$("#grid").jqGrid({ url: "./info", datatype: "json", mtype: "GET", ajaxSelectOptions:{ type: "GET", dataType: "json" }, .... });ACTUALIZACIÓN: con pequeños cambios, su código funciona bien. Aquí hay un enlace a su código
Tenga en cuenta que el formateador no tiene la opción dataUrl. Sólo está disponible en edición.