This is a migrated thread and some comments may be shown as answers.

Error while printing RadGrid HeaderRow with Selected Rows.

0 Answers 65 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Guruvu
Top achievements
Rank 1
Guruvu asked on 13 Sep 2011, 12:27 PM

Hi,

I have RadGrid with both Master data & details data.My requirement is what are the rows that i selected either in Master and/or Details grid,it should be printed with header row(s).

Here is my java script function for printing grid with Master data & details data with Header Row's :

<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">  
<script type="text/javascript"
 function PrintRadGrid() { 
        var sh = '<%= Page.ClientScript.GetWebResourceUrl(gvIndents.GetType(),String.Format("Telerik.Web.UI.Skins.{0}.Grid.{0}.css",gvIndents.Skin)) %>'; 
        var styleStr = "<html><head><link href = '" + sh + "' rel='stylesheet' type='text/css'></link></head>"; 
        var MasterTable = $find('<%= gvIndents.ClientID %>').get_masterTableView(); 
        var selectedRows = MasterTable.get_selectedItems(); 
        var htmlcontent = "<table>"; 
        var headerRow = $telerik.$(grid.get_masterTableView().get_element()).find("th.rgHeader").parent("tr")[0]; 
        htmlcontent = htmlcontent + "<tr>" + headerRow.get_element().innerHTML + "</tr>"; 
    
        for (var i = 0; i < selectedRows.length; i++) { 
            var row = selectedRows[i]; 
            htmlcontent = htmlcontent + "<tr>" + row.get_element().innerHTML + "</tr>"; 
            if (row.get_nestedViews().length > 0) { 
                var detailTableView = row.get_nestedViews()[0]; 
                headerRow = $telerik.$(detailTableView.get_element()).find("th.rgHeader").parent("tr")[0]; 
                htmlcontent = htmlcontent + "<tr>" + headerRow.get_element().innerHTML + "</tr>"; 
    
                var nestedSelectedRows = row.get_nestedViews()[0].get_selectedItems(); 
                for (var j = 0; j < nestedSelectedRows.length; j++) { 
                    var nestedRow = nestedSelectedRows[j]; 
                    htmlcontent = htmlcontent + "<tr>" + nestedRow.get_element().innerHTML + "</tr>"; 
                
            
        
    
    
        htmlcontent = styleStr + "<body><div class='RadGrid RadGrid_Simple'>" + htmlcontent + "</table></div></body></html>"; 
    
        var previewWnd = window.open('about:blank', '', '', false); 
        previewWnd.document.open(); 
        previewWnd.document.write(htmlcontent); 
        previewWnd.document.close(); 
        previewWnd.print(); 
    
</script>  
</telerik:RadCodeBlock>
        


<telerik:RadGrid ID="gvIndents" runat="server" .......
...........................................>
  
<CommandItemTemplate>  
                                  <div style="padding: 5px 5px;">                                                               
                                     <asp:LinkButton ID="LinkButton1" runat="server" Text="Print Selected" OnClientClick="PrintRadGrid(); return false;" />  
                                  </div>  
                            </CommandItemTemplate
  
..........................................
</telerik:RadGrid>

After selecting some rows & if i click on "Print Selected" linkbutton which is placed on CommandItemTemplete it will display any output.

So please solve my problem...

Thanks in advance...

No answers yet. Maybe you can help?

Tags
Grid
Asked by
Guruvu
Top achievements
Rank 1
Share this question
or