私はこのajaxコードを持っています。次のページに行オブジェクト送信のすべての詳細を表示できるように、行オブジェクトを取得してコントローラーに送信する方法、onselectrow、フォーマッターも試しました。
var jq = jQuery.noConflict();
jq(document).ready(function() {
var grid = jq("#grid");
grid.jqGrid({
url:'${pageContext.request.contextPath}/getRegisteredClassesData.html',
datatype: 'json',
mtype: 'POST',
colNames:['Course Name'],
colModel:[{name:'courseName',index:'courseName', width:55,
formatter: function (cellvalue, options, rowObject) {
var cellPrefix = '';
return cellPrefix + '<a href= ${pageContext.request.contextPath}/registeredClassesDetail.phone?regNo='+ rowObject.regNo +'&courseId='+ rowObject.courseId +'">' + cellvalue + '</a>';
}
},],
rowNum:5,
height: 130,
autowidth: true,
pager: '#pager',
hidegrid:false,
viewrecord: true,
emptyrecords: "Empty records",
loadComplete: function() {},
jsonReader : {
root: "rows",
page: "page",
total: "total",
records: "records",
cell: "cell",
repeatitems: false,
id: "id"
}
});
grid.jqGrid('navGrid','#pager',
{add:false, edit:false, del:false, search:false}
);
});
コントローラーから、送信したパラメーターを取得したいのですが、これは courseId と regNo です。しかし、コントローラーでデバッグすると、両方ともnullです。この 2 つのパラメーターを使用してドメイン内を検索し、正しいデータが表示されるようにしたいと考えています。私を助けてください。よろしくお願いします。
これは、詳細を表示するページ内の ajax コードです。ほとんど同じです。しかし、最も重要なのは、データを取得して、任意の形式で表示できるようにすることです。
var jq = jQuery.noConflict();
jq(document).ready(function() {
var grid = jq("#grid");
var regNo = '<%=request.getSession().getAttribute("regNo")%>';
var courseId = '<%=request.getSession().getAttribute("courseId")%>';
grid.jqGrid({
url:'${pageContext.request.contextPath}/getRegisteredClassesDetails.html',
datatype: 'json',
mtype: 'POST',
/* postData: {
courseId: function() { return jQuery("#courseId option:selected").val(); },
regNo: function() { return jQuery("#regNo option:selected").val(); }
}, */
postData:{regNo:regNo,
courseId:courseId},
colNames:['Registration #', 'Status',
'Course Name', 'Location',
'Start Date', 'Registered Person'],
colModel:[
{name:'regNo',index:'regNo', width:20},
{name:'regStatus',index:'regStatus', width:20},
{name:'courseName',index:'courseName', width:150},
{name:'courseLoc',index:'courseLoc', width:30},
{name:'startDate',index:'startDate', width:25},
{name:'fullName',index:'fullName', width:30,sortable:false}],
rowNum:5,
rowList:[5,10,20],
height: 200,
autowidth: true,
pager: '#pager',
sortname: 'startDate',
hidegrid:false, //disable the collapse/expand function
viewrecord: true,
caption:"Course Details",
emptyrecords: "Empty records",
//multiselect:true,
loadComplete: function() {
},
jsonReader : {
root: "rows",
page: "page",
total: "total",
records: "records",
cell: "cell",
repeatitems: false,
id: "id"
}
});
grid.jqGrid('navGrid','#pager',
{add:false, edit:false, del:false, search:false}
);
});