我是JQuery和jqGrid的新手。我成功地使他们能够使用我正在创建的新ASP.Net MVC3应用程序。但是,我想将jqGrid改造为Tomcat / Java应用程序,该应用程序接管了2005年编写的(注意:但我没有编写代码)。此应用程序使用JSP + Servlets的组合Tomcat 6.20上的+ Services + Velocity。有问题的页面是一个Velocity模板,它由POST支持servlet,该servlet是与服务的对话。我在模板中配置了jqGrid,它在渲染时正确设置。
现在,我要为初学者做的就是不修改返回“网格”搜索结果的服务中的任何内容。即,不希望jqGrid回发渲染数据(仅此而已)。该服务返回一个“搜索结果”集合对象,该对象包含Velocity可以在模板中操作的网格搜索结果数据(并根据某些POST标准进行分页)。因此,当页面由Velocity引擎呈现时,我搜索的数据存在,但锁定在SearchResults集合中。我不确定的是我应该采取什么方法将SearchResults集合拉入jqGrid,因为它与页面一起呈现?原始HTML网格是使用Velocity #for
循环构建的,循环遍历集合并构建具有每个“行”属性的TABLE结构。
最终,如果客户端喜欢这么多,并批准更充分地集成jqGrid的费用,我将修改服务以将JSON直接返回到jqGrid并让jqGrid处理数据,就像通常使用jqGrid的URL属性一样,但我需要先销售它,并希望我能够将现有的结果集合作为第一步。刚刚对JQuery和jqGrid足够新,不能确定如何以最不痛苦的方式攻击它。
我要补充的一点是,我不是速度专家。只学习了足够的东西来维护这个包。我的理解是Velocity在将页面发送到浏览器之前首先呈现页面。因此,它似乎也可以呈现jqGrid的<script>
部分和/或<script>
部分中可以提供jqGrid行的数据结构。只是不确定在本地提供的上下文中需要什么。我只使用过jqGrid的URL GET和POST。