我正在使用spring MVC应用程序。我也在为jquery使用JQGrid插件。我是第一次使用Jquery和JQGrid。
我能够在jqgrid中成功加载数据,但是在加载数据之后我想在jqGrid中更改名为“hasApprovedByCorporate”的列的值。我还能够显示上述列中的数据警报信息也是如此。
下面是jquery函数,它负责在jqgrid中加载数据,并为你提供代码中添加的所有css和java脚本文件的snipet(对于jquery版本引用)。
<script src="<%=request.getContextPath() %>/js/jquery/jquery-ui-1.7.3.custom.min.js" type="text/javascript" ></script>
<script src="<%=request.getContextPath() %>/js/jquery/jquery-ui.js" type="text/javascript" ></script>
<script src="<%=request.getContextPath() %>/js/jquery/grid.locale-en.js" type="text/javascript"></script>
<script src="<%=request.getContextPath() %>/js/jquery/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="<%=request.getContextPath() %>/js/jquery/jquery.layout.js" type="text/javascript"></script>
<%--<script src="<%=request.getContextPath() %>/js/jquery/jquery.contextmenu.js" type="text/javascript"></script> --%>
<script src="<%=request.getContextPath() %>/js/jquery/jquery.tablednd.js" type="text/javascript"></script>
<script src="<%=request.getContextPath() %>/js/jquery/ui.multiselect.js" type="text/javascript"></script>
<script src="<%=request.getContextPath() %>/js/jquery/jquery.simplemodal.js" type="text/javascript" ></script>
<link href="<%=request.getContextPath() %>/css/jquery-ui-1.8.1.custom.css" type="text/css" rel="stylesheet" />
<link href="<%=request.getContextPath() %>/css/ui.jqgrid.preview.css" type="text/css" rel="stylesheet" />
<link href="<%=request.getContextPath() %>/css/ui.multiselect.css" type="text/css" rel="stylesheet" />
<link href="<%=request.getContextPath() %>/css/jquery.loadmask.css" type="text/css" rel="stylesheet" />
<script type=text/javascript>var jq = jQuery.noConflict();</script>
<script type="text/javascript">
jQuery(document).ready(function(){
loadMediaRequestDetails();
});
//function called when the this page gets loaded
function loadMediaRequestDetails() {
jq("#grid").jqGrid({
url:'/loadworkflowqueuedata.cvr?soeId=<%=request.getParameter("soeId")%>',
datatype: 'json',
mtype: 'GET',
colNames:[ 'RequestId','RequestorName','Corporate Affairs','Legal','Current Status','Request Type','Request Date','Event/Interview Date','Region'],
colModel:[
{name:'requestId',index:'requestId',sortable: true,sorttype: 'number', width:100,editable:false,key:true, editrules:{required:true}, editoptions:{size:10},formatter:showMediaDetailLink},
{name:'requestor',index:'requestor',sortable: true, width:100,editable:false, editrules:{required:true}, editoptions:{size:10}},
{name:'hasApprovedByCorporate',search:false, width:100,editable:false, editrules:{required:true}, editoptions:{size:10}},
{name:'hasApprovedByRschMgmt',search:false,width:100,editable:false, editrules:{required:true}, editoptions:{size:10}},
{name:'requestStatus', index:'requestStatus',sortable: true,width:100,editable:false, editrules:{required:true}, editoptions:{size:10}},
{name:'requestType', index:'requestType',sortable: true,width:100,editable:false, editrules:{required:true}, editoptions:{size:10}},
{name:'createDate',index:'createDate',search:false,sortable: true,sorttype: 'date',width:100,editable:false, editrules:{required:true}, editoptions:{size:10},formatter: 'date', formatoptions: { srcformat: 'd/m/Y', newformat: 'd/m/Y'}},
{name:'eventDate',index:'eventDate',sortable: true,sorttype: 'date',search:false,width:100,editable:false, editrules:{required:true}, editoptions:{size:10},formatter: 'date', formatoptions: {srcformat: 'd/m/Y',newformat: 'd/m/Y'},searchoptions:{dataInit:datePick,searchOnEnter:false}},
{name:'requestorRegion',index:'requestorRegion',sortable: true, width:100,editable:false, editrules:{required:true}, editoptions:{size:10}}
],
postData: {
},
height: 'auto',
autowidth: true,
rownumbers: true,
pager: '#pager',
viewrecords: true,
sortorder: "asc",
emptyrecords: "Empty records",
loadonce: true,
rowNum:10,
loadComplete: function() {
alert("complete function called1234");
var rows= jQuery("#grid").jqGrid('getRowData');
alert(rows.length);
for(var i=0;i<rows.length;i++){
var row=rows[i];
alert(row['hasApprovedByCorporate']);//get the user_id column value
if(row['hasApprovedByCorporate']=='true'){
alert("Corporate Affairs is true");
row['hasApprovedByCorporate']='Y';
}
}
},
jsonReader : {
root: "rows",
repeatitems: false,
page:"page",
total: "total",
records: "records",
cell: "cell",
id: "id"
}
});
jQuery("#grid").jqGrid('navGrid','#pager',{edit:false,add:false,del:false,search: false,refresh:false});
jQuery("#grid").jqGrid('filterToolbar', { stringResult: true, searchOnEnter: false, defaultSearch: "cn",ignoreCase: true });
};
</script>
我必须按照简单的algoritham来改变单元格的值
if (value of cell=='true'){
value of cell='Y'
set the new value back to jqgrid appropriate [row][column]
}
else{
value of cell='N';
set the new value back to jqgrid appropriate [row][column]
}
我的问题出现了:
1. 但我不知道如何使用条件设置新值并将其显示回网格。?
请帮我解决这个问题。我已经浏览了几个链接,但它们都不适合我