如何从服务器删除选定的行并重新加载网格?

发布于 2024-12-15 04:09:55 字数 1271 浏览 3 评论 0原文

我试图在我的网页中实现 jqgrid 但无法处理删除;如果用户选择多个值并单击删除,我想调用一个 servlet 来处理删除并返回页面。

代码片段如下:

<script type="text/javascript">
function fillGridOnEvent(){
    $("#jQGrid").html("<table id=\"list\"></table><div id=\"page\"></div>");
    jQuery("#list").jqGrid({
        url:'<%=request.getContextPath()%>/MyServletGrid?q=1&action=fetchData',
        datatype: "xml",
        mtype: 'POST',
        height: 423,
        colNames:['##','Keyword','Category','ViewType',"Action"],
        colModel:[
            {name:'srNo',index:'srNo', width:30,sortable:true,align:'center'},
            {name:'Keyword',index:'Keyword', width:200,sortable:true},
            {name:'Category',index:'Category', width:100,sortable:true,align:'center'},
            {name:'ViewType',index:'ViewType', width:100,sortable:true,align:'center'},
            {name:'view',index:'view', width:113,sortable:false,align:'center'}
        ],
        multiselect: true,
        paging: true,
        rowNum:18,
        pager: $("#page"),
        loadonce:true,
        caption: "Test JQGrid"
    }).navGrid('#page',{edit:false,add:false,del:true});
}
jQuery().ready(function (){
    //fillGrid();                    rowList:[10,20,30],
});

Im trying to implement a jqgrid in my web page but not able to handle delete; if the user selects multiple values, and clicks on delete, I want to invoke a servlet that will handle the delete and return to the page.

The code snippet is as below:

<script type="text/javascript">
function fillGridOnEvent(){
    $("#jQGrid").html("<table id=\"list\"></table><div id=\"page\"></div>");
    jQuery("#list").jqGrid({
        url:'<%=request.getContextPath()%>/MyServletGrid?q=1&action=fetchData',
        datatype: "xml",
        mtype: 'POST',
        height: 423,
        colNames:['##','Keyword','Category','ViewType',"Action"],
        colModel:[
            {name:'srNo',index:'srNo', width:30,sortable:true,align:'center'},
            {name:'Keyword',index:'Keyword', width:200,sortable:true},
            {name:'Category',index:'Category', width:100,sortable:true,align:'center'},
            {name:'ViewType',index:'ViewType', width:100,sortable:true,align:'center'},
            {name:'view',index:'view', width:113,sortable:false,align:'center'}
        ],
        multiselect: true,
        paging: true,
        rowNum:18,
        pager: $("#page"),
        loadonce:true,
        caption: "Test JQGrid"
    }).navGrid('#page',{edit:false,add:false,del:true});
}
jQuery().ready(function (){
    //fillGrid();                    rowList:[10,20,30],
});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

最丧也最甜 2024-12-22 04:09:55

获取要删除的行的行 ID,如下所示

var rowid = jQuery("#tableid").jqGrid('getGridParam', 'selrow');

使用以下

var rowdata = jQuery("#tableid").jqGrid('getRowData', rowid);

rowdata 获取行数据将包含 rowdata.srNo、rowdata.Keyword 等数据,

向您的 servlet 发出 ajax 调用以从数据库中删除。然后调用以下命令重新加载网格

jQuery("#tableid").trigger('reloadGrid');

Get the row id of the row to be deleted as follows

var rowid = jQuery("#tableid").jqGrid('getGridParam', 'selrow');

Get the row data using the following

var rowdata = jQuery("#tableid").jqGrid('getRowData', rowid);

rowdata will have your data like rowdata.srNo, rowdata.Keyword etc.,

Issue an ajax call to your servlet for the delete from your database. Then call the following to reload your grid

jQuery("#tableid").trigger('reloadGrid');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文