3

如何多选行并将发布数据发送到新数据表?我对这篇文章有一个想法,但没有详细说明。我正在考虑多选行并将它们发送到数据库的新表中,同时从原始表中删除它们,单击导航栏上的任一按钮或者最好是外部链接(如底部的“完成”。在此处输入图像描述

[新编辑] 这就是我的代码现在的样子。我在点击后将其发布到不同的数据库,并且在我希望从网格和数据库中删除选定的行之后。我已经在成功时附加了删除功能,但我没有删除任何内容。请问有什么建议吗?

            jQuery("#minibutton").click( function(){

    var selectedrows = $("#list").jqGrid('getGridParam','selarrrow');
if(selectedrows.length) {
for(var i=0;i<selectedrows.length; i++) {

var selecteddatais = $("#list").jqGrid('getRowData',selectedrows[i]);
        var rows=JSON.stringify(selecteddatais)
        var postArray = {json:rows};

    $.ajax({
      type: "POST",
      url: "jsonsend.php",
   data: postArray,       
   dataType: "json",
   success: function () {
                             var errors = [];
  jQuery("#list").jqGrid('getGridParam','selarrrow').each(function(index, value) {
    if (!jQuery("#list").jqGrid('delRowData', value)) errors.push(value);
  });
  if (errors.length)
  {
    alert('Already deleted or not in list on row(s): ' + errors.join(', ')); 
  }

    }

                       }); 
         } 

 }
 });
     });
</script>
4

1 回答 1

2

您可以在 jqgrid 中启用删除按钮,然后将值作为 delData 传递给您的 servlet 或处理程序。这里我在我的 servlet 中传递 MsgId 的值。在这里检查:

 .navGrid('#page',{edit:false,add:false,del:true,deltext:"Move to  Trash"},{},{},
            /*delete start */{
                 url: '<%=request.getContextPath() + "/MessageBoxServlet?inbox=Remove"%>',
                 closeOnEscape: true,
                 reloadAfterSubmit: true,
                 delData: {
                   MsgId: function () {
                        var sel_id = $('#list').jqGrid('getGridParam', 'selarrrow');
                        var value ="";
                        for(var a=0;a < sel_id.length;a++)
                            {
                               value = ('#list').jqGrid('getCell', sel_id[a], 'msgBoxId');

                            }

                       return value;
                   }
               },


             }
          );
于 2014-02-18T10:52:55.983 回答