Jgrid Problem Generating XML

前端 未结 2 1996
失恋的感觉
失恋的感觉 2021-01-17 00:51

i am using Jgrid. i am injecting the data to the Grid using Xml as we most of us do.

i want the batch update to database, my requirement that when i click on the \"S

相关标签:
2条回答
  • 2021-01-17 01:31

    Hi Oleg I am using the ths same code but it not produce the correct output.. My code is

        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Untitled Page</title>
        <!-- <script type="text/javascript">
                debugger;
                alert($!retrivexml);
                </script>-->
        <link href="../../Content/css/Style/style.css" rel="stylesheet" type="text/css" />
        <link rel="stylesheet" href="../../Content/css/Style/jquery-ui-1.7.2.custom.css"
            type="text/css" media="screen" />
        <link rel="stylesheet" href="../../Content/css/Style/ui.jqgrid.css" type="text/css"
            media="screen" />
        <link rel="stylesheet" type="text/css" media="screen" href="../../Content/css/Style/jqModal.css" />
        <link rel="stylesheet" type="text/css" media="screen" href="../../Content/css/Style/datePicker.css" />
    
        <script src="../../Content/js/Jgrid js/jquery.js" type="text/javascript"></script>
        <script src="../../Content/js/Jgrid js/grid.locale-en.js" type="text/javascript"></script>
        <script src="../../Content/js/Jgrid js/jquery.jqGrid.min.js" type="text/javascript"></script>
        <!--<script src="../../Content/js/Jgrid js/celledit.js" type="text/javascript"></script>-->
        <script src="../../Content/js/Jgrid js/ui.datepicker.js" type="text/javascript"></script>
        <script src="../../Content/js/Jgrid js/json2.js" type="text/javascript"></script>
        <script src="../../Content/js/Jgrid js/JsonXml.js" type="text/javascript"></script>
        <script src="../../Content/js/Jgrid js/grid.import.js" type="text/javascript"></script>
    
        <script type="text/javascript">
    
            jQuery(document).ready( function() {
    
    
            var grid = jQuery("#test");
                var MyExportToXml = function (grid) {debugger;
                    var dataFromGrid = {row: grid.jqGrid ('getGridParam', 'data') };
                    var xmldata = '<?xml version="1.0" encoding="utf-8" standalone="yes"?>\n<rows>\n' +
                                  xmlJsonClass.json2xml (dataFromGrid, '\t') + '</rows>';
                    alert(xmldata);
                };
    
    
            var lastsel3;
            jQuery("#test").jqGrid({
            url:'/Content/xml/user.xml',
            //url: $!retrivexml,
            datatype: "xml",
            colNames:['Consultant','Project Role', 'Task', 'Start Date','End Date','Deliverables','Complete'],
            colModel:[
                {name:'Consultant',index:'Consultant', width:90, editable: true,edittype:"select",editoptions:{value:"K:Kin;R:Rajesh;R:Renee;S:Sandeep"}},
                {name:'Role',index:'Role', width:80, align:"right",editable:true},
                {name:'Task',index:'Task', width:80, align:"right",editable:true},
                {name:'SDate',index:'SDate', width:90,editable:true},
                {name:'EDate',index:'EDate', width:90,editable:true},
                {name:'Deliverables',index:'Deliverables', width:200, sortable:false,editable: true,edittype:"textarea", editoptions:{rows:"2",cols:"25"}},
                {name:'Complete',index:'Complete', width:60, editable: true,edittype:"checkbox",editoptions: {value:"Complete:Incomplete"}}     
            ],
    
    
            rowNum:10,
            //rowList:[10,20,30],
            pager: '#pagediv',
            sortname: 'id',
            viewrecords: true,
            sortorder: "desc",
            caption:"Project Planning",
            forceFit : false,
            cellEdit: true,
            editurl:'clientArray',
            cellsubmit: 'clientArray',
    
    
            afterEditCell: function (id,name,val,iRow,iCol){
    
    
            if(name=='SDate') {
                    jQuery("#"+iRow+"_SDate","#test").datepicker({dateFormat:"yy-mm-dd"});
    
                }
    
    
    
            if(name=='EDate') {
                    jQuery("#"+iRow+"_EDate","#test").datepicker({dateFormat:"yy-mm-dd"});
                }
            },
    
    
    //      afterSaveCell : function(rowid,name,val,iRow,iCol) {
    //          if(name == 'amount') {
    //              var taxval = jQuery("#celltbl").jqGrid('getCell',rowid,iCol+1);
    //              jQuery("#test").jqGrid('setRowData',rowid,{total:parseFloat(val)+parseFloat(taxval)});
    //          }
    //          
    //          
    //          
    //          if(name == 'tax') {
    //              var amtval = jQuery("#test").jqGrid('getCell',rowid,iCol-1);
    //              jQuery("#test").jqGrid('setRowData',rowid,{total:parseFloat(val)+parseFloat(amtval)});
    //          }
    //      }
        });
        jQuery("#test").jqGrid('navGrid','#pagediv',{edit:false,add:false,del:false});
    
    
        $("#export").click(function(){
                    MyExportToXml (grid);
                });
    
    
    
        jQuery("#bedata").click(function(){
    
        jQuery("#test").jqGrid('navButtonAdd','#pagediv',{caption:"New", buttonicon :'ui-icon-circle-plus', 
                        onClickButton:function(id){
                          var datarow = {Consultant:"",Role:"",Task:"",SDate:"",EDate:"",
                                           Deliverables:"",Complete:""};
                          var lastsel2 = id;
                          //debugger;
                          var su=jQuery("#test").addRowData(lastsel2, datarow, "last") ;
    //                  if (su) { 
    //                          jQuery('#test').editRow(lastsel2,true); 
    //                                            
    //                     
    //                           }  
                          },
                    title:"New Button",
                    position:"last"
                    });
            //jQuery("#test").jqGrid('editGridRow',"new",{height:280,reloadAfterSubmit:false});
        });
    
                });
        </script>
    
    </head>
    <body>
        <form id="form1">
            <div id="pagediv">
            </div>
            <table id="test">
            </table>
            <input type="BUTTON" id="bedata" value="Edit Selected" />
            <input type="BUTTON" id="export" value="Export" />
        </form>
    </body>
    

    Please..correct the code if i m doing some mistake here

    0 讨论(0)
  • 2021-01-17 01:40

    To export data to XML you can use jQuery("#test").jqGrid ('getGridParam', 'data') in combination with xmlJsonClass.json2xml from JsonXml.js which included to jqGrid.

    I created a working example which demonstrate this way: http://www.ok-soft-gmbh.com/jqGrid/ExportInXml.htm. You can use external button or a button in the jqGrid navigator to make the export. In the example I just display the exported data with respect of alert function. The same data as a file you find here.

    0 讨论(0)
提交回复
热议问题