Spring3和jqgrid,我试图从控制器将数据加载到选择选项中,但无法填充
我正在使用Spring3和jqgrid,除了从控制器将数据加载到select选项之外,一切都正常。我尝试将数据加载到jsion数组对象并发送到jsp页面,但我无法使用Spring3和jqgrid,我试图从控制器将数据加载到选择选项中,但无法填充,jqgrid,Jqgrid,我正在使用Spring3和jqgrid,除了从控制器将数据加载到select选项之外,一切都正常。我尝试将数据加载到jsion数组对象并发送到jsp页面,但我无法使用 (editoptions: {dataUrl:"location/role.do") 请查看我的代码并帮助我 我的控制器类是 @Controller @RequestMapping("/location") public class AddCenterLocation { @Autowired private
(editoptions: {dataUrl:"location/role.do")
请查看我的代码并帮助我
我的控制器类是
@Controller
@RequestMapping("/location")
public class AddCenterLocation {
@Autowired
private RecoupService recoupService;
@RequestMapping(method = RequestMethod.GET)
public @ResponseBody
CustomCenterLocationResponse getAll() {
List<? extends CenterLocation> users = recoupService.getCenter();
response.setRows(users);
response.setRecords(String.valueOf(users.size()));
response.setPage("1");
response.setTotal("10");
return response;
}
@RequestMapping(value = "/role", method = RequestMethod.GET)
public @ResponseBody
CustomGenericResponse role(HttpServletRequest request, HttpServletResponse response) {
JSONObject jsonArray = new JSONObject();
try {
List<CenterLocation> users = recoupService.getCenter();
for (CenterLocation harbour : users) {
jsonArray.put(harbour.getCenterId(), harbour.getCenterAddress());
}
response.getWriter().write(jsonArray.toString());
} catch (Exception exception) {
System.out.println("error is " + exception);
}
return null;
}
@控制器
@请求映射(“/location”)
公共类AddCenterLocation{
@自动连线
私有资源服务资源服务;
@RequestMapping(method=RequestMethod.GET)
公共@ResponseBody
CustomCenterLocationResponse getAll(){
List第一个jackson lib被导入lib文件夹,用于将json数据发送到jsp页面。
然后
创建两个pojo类这仅用于演示,您可以根据需要进行更改
公共类位置{
列表角色
//setter getter
}
公共阶级角色
{
//塞特吸气剂
}
这是控制器请求
@Controller
@RequestMapping("/location")
public class AddCenterLocation {
@Autowired
private RecoupService recoupService;
@RequestMapping(method = RequestMethod.GET)
public @ResponseBody
CustomCenterLocationResponse getAll() {
List<? extends CenterLocation> users = recoupService.getCenter();
response.setRows(users);
response.setRecords(String.valueOf(users.size()));
response.setPage("1");
response.setTotal("10");
return response;
}
@RequestMapping(value = "/role", method = RequestMethod.GET)
public @ResponseBody
CustomGenericResponse role(HttpServletRequest request, HttpServletResponse response) {
JSONObject jsonArray = new JSONObject();
try {
List<CenterLocation> users = recoupService.getCenter();
for (CenterLocation harbour : users) {
jsonArray.put(harbour.getCenterId(), harbour.getCenterAddress());
}
response.getWriter().write(jsonArray.toString());
} catch (Exception exception) {
System.out.println("error is " + exception);
}
return null;
}
@RequestMapping(value=“/role”,method=RequestMethod.GET)
public@ResponseBody
位置角色(HttpServletResponse){
System.out.println(“名称”);
地点商店=新地点();
列表=新的ArrayList();
角色=新角色();
角色设置ID(“abc”);
角色设置名称(“abc”);
列表。添加(角色);
Role role1=新角色();
角色1.setId(“abc1”);
角色1.集合名(“abc1”);
列表。添加(角色1);
shop.setRole(列表);
退货店;
}
jsp页面
jq(function() {
jq("#grid").jqGrid({
url:'location.do',
datatype: 'json',
mtype: 'GET',
colNames:['Id', 'Center Name', 'Address','Country','State','City','Pin Code','Land Line No','Mobile No','Role'],
colModel:[
{name:'id',index:'id', width:55,editable:false,editoptions:{readonly:true,size:10},hidden:true},
{name:'centerName',index:'centerName', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'centerAddress',index:'centerAddress', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'centerCountry',index:'centerCountry', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'centerState',index:'centerState', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'centerCity',index:'centerCity', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'centerPinCode',index:'centerPinCode', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'landLineNo',index:'landLineNo', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{name:'mobileNo',index:'mobileNo', width:100,editable:true, editrules:{required:true}, editoptions:{size:10}},
{ name: 'Slger', index: 'Slger', editable: true, edittype: "select",
editoptions: {dataUrl:"location/role.do",
buildSelect: function (data) {
var response = jQuery.parseJSON(data.responseText);
var s = '<select>';
if (response && response.length) {
for (var i = 0, l = response.length; i < l; i++) {
var ri = response[i];
s += '<option value="' + ri + '">' + ri + '</option>';
}
}
return s + "</select>";
}
}
}
],
postData: {
},
rowNum:20,
rowList:[20,40,60],
height: 400,
autowidth: true,
rownumbers: true,
pager: '#pager',
sortname: 'id',
viewrecords: true,
sortorder: "asc",
caption:"Users",
emptyrecords: "Empty records",
loadonce: false,
loadComplete: function() {
},
jsonReader : {
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: false,
cell: "cell",
id: "id"
}
});
jq("#grid").jqGrid('navGrid','#pager',
{edit:false,add:false,del:false,search:true},
{ },
{ },
{ },
{
sopt:['eq', 'ne', 'lt', 'gt', 'cn', 'bw', 'ew'],
closeOnEscape: true,
multipleSearch: true,
closeAfterSearch: true }
);
jq("#grid").navButtonAdd('#pager',
{ caption:"Add",
buttonicon:"ui-icon-plus",
onClickButton: addRow,
position: "last",
title:"",
cursor: "pointer"
}
);
jq("#grid").navButtonAdd('#pager',
{ caption:"Edit",
buttonicon:"ui-icon-pencil",
onClickButton: editRow,
position: "last",
title:"",
cursor: "pointer"
}
);
jq("#grid").navButtonAdd('#pager',
{ caption:"Delete",
buttonicon:"ui-icon-trash",
onClickButton: deleteRow,
position: "last",
title:"",
cursor: "pointer"
}
);
jq("#btnFilter").click(function(){
jq("#grid").jqGrid('searchGrid',
{multipleSearch: false,
sopt:['eq']}
);
});
// Toolbar Search
jq("#grid").jqGrid('filterToolbar',{stringResult: true,searchOnEnter : true, defaultSearch:"cn"});
});
修改jqgrid的选择部分
{ name: 'name', index: 'name', editable: true, edittype: "select",
editoptions: {dataUrl:"location/role.do",
buildSelect: function (role)
{
var data = jQuery.parseJSON(role);
var s = '<select>';
for (var i = 0; i < data.role.length; i++) {
s += '<option value="' + data.role[i].id + '">' + data.role[i].name + '</option>';
}
return s + "</select>";
}
}
}
{name:'name',index:'name',可编辑:true,edittype:“select”,
editoptions:{dataUrl:“位置/角色.do”,
buildSelect:功能(角色)
{
var data=jQuery.parseJSON(角色);
var s='';
对于(变量i=0;i
一切都会好起来的
{ name: 'name', index: 'name', editable: true, edittype: "select",
editoptions: {dataUrl:"location/role.do",
buildSelect: function (role)
{
var data = jQuery.parseJSON(role);
var s = '<select>';
for (var i = 0; i < data.role.length; i++) {
s += '<option value="' + data.role[i].id + '">' + data.role[i].name + '</option>';
}
return s + "</select>";
}
}
}