- struts2 jqgrid editable cell not editable
- <table width='100%'>
- <s:select id='parentId' name='parentId' emptyOption="true" theme="xhtml" key='key.parent' list='#session.parentList' listKey='id' listValue='name' />
- </table>
- <s:url id="loadLevel1" namespace="/actionpath" action="loadLevel1">
- <s:param name="jsonMethodToExecute">findLoadLevel1</s:param>
- </s:url>
- <table>
- <tr>
- <td>
- <sjg:grid id="level1Grid" caption="%{getText('level1.title')}" dataType="json" href="%{loadLevel1}" pager="true"
- gridModel="newLevel1List"
- rowList="10,15,20"
- rowNum="15"
- rownumbers="true"
- onSelectRowTopics="level1rowselect"
- >
- <sjg:gridColumn name="id" align='left' index="id" title='Id' hidden="true"/>
- <sjg:gridColumn name="parent.id" align='left' index="parent.id" title='Id' hidden="true"/>
- <sjg:gridColumn name="name" align='left' index="name" title='%{getText("resourcebundle.name")}' sortable="true"/>
- <sjg:gridColumn name="dataType" align='left' formatter="dataType" width="80" index="dataType" title='%{getText("resourcebundle.datatype")}' sortable="true"/>
- <sjg:gridColumn name="parent.name" align='left' index="parent.name" title='%{getText("resourcebundle.parent")}' sortable="true"/>
- <sjg:gridColumn name="statusDesc" width="90" cssStyle='text-align:right' index="statusDesc" title='%{getText("model.status")}' sortable="true"/>
- <sjg:gridColumn name="status" cssStyle='text-align:right' hidden='true' index="status" title='%{getText("model.status")}'/>
- </sjg:grid>
- </td>
- </tr>
- </table>
- <script type="text/javascript">
- $.subscribe('level1rowselect', getLevel2Data);
- function getLevel2Data(event, data)
- {
- var grid = event.originalEvent.grid;
- var sel_id = grid.jqGrid('getGridParam', 'selrow');
- rowData = grid.jqGrid('getRowData', sel_id);
- <s:url id="loadLevel2Table" namespace="/actionpath" action="loadLevel2Table">
- <s:param name="jsonMethodToExecute">findLevel2</s:param>
- </s:url>
- var parentId = rowData["parent.id"];
- if(parentId != '')
- {
- var url = '<s:property value="loadLevel2Table" />' + "&level1=" + parentId;
- $("#level2Grid").jqGrid('setGridParam',{url:url,page:1,datatype:'json'}).trigger('reloadGrid');
- }
- }
- $("#parentId").change(function()
- {
- var parentId = $("#parentId").val();
- if(parentId != '')
- {
- var url = '<s:property value="loadLevel1" />' + "&parentId=" + parentId;
- $("#level1Grid").jqGrid('setGridParam',{url:url,page:1,datatype:'json'}).trigger('reloadGrid');
- }
- });
- </script>
- </div>
- <br/><br/>
- <div id="object4">
- <s:url id="loadLevel2Table" namespace="/actionpath" action="loadLevel2Table">
- <s:param name="jsonMethodToExecute">findLevel2</s:param>
- </s:url>
- <table>
- <tr>
- <td>
- <sjg:grid id="level2Grid" caption="%{getText('resourcelevel2.title')}" dataType="json" href="%{loadLevel2Table}" pager="true"
- gridModel="level2List"
- rowList="10,15,20"
- rowNum="15"
- rownumbers="true"
- onSelectRowTopics="leavesrowselect"
- >
- <sjg:gridColumn name="id" align='left' index="id" title='Id' hidden="true"/>
- <sjg:gridColumn name="name" width="200" align='left' index="name" title='%{getText("resourcelevel2.item")}' sortable="true"/>
- <sjg:gridColumn name="amount" editable="true" align='right' index="amount" title='%{getText("resourcelevel2.amount")}' sortable="true"/>
- <sjg:gridColumn name="statusDesc" cssStyle='text-align:right' index="statusDesc" title='%{getText("model.status")}' sortable="true"/>
- <sjg:gridColumn name="status" cssStyle='text-align:right' hidden='true' index="status" title='%{getText("model.status")}'/>
- </sjg:grid>
- </td>
- </tr>
- </table>
- <script type="text/javascript">
- </script>
- </div>