2009-04-07 13 views
0

Je tente de convertir le contenu d'une page au format Excel, le problème est que lorsque je redirige la page je ne reçois pas mes variables de demande, donc j'ai trouvé une solution que nous devrions définir une variable hiden pour chaque variable de demande, puis définir la valeur après Get appel. Ceci est le code qui suis maintenant en utilisant:Auto rediriger une page .Asp et garder les mêmes variables de demande

<script language="Javascript"> 
    function exportToExcel() 
    { 
    document.frm.hndExcel.value = "true"; 
    document.frm.submit(); 
    } 
</script> 


<form name="frm" method="get" action="LibGetStatistics.asp" ID="Form1"> 
<% if Request.QueryString("hndExcel") = "true" then 
    Response.ContentType = "application/vnd.ms-excel" 
end if%> 

<%= GetStatistics() %> 
    <input type="hidden" name="hndExcel" value="false" ID="Hidden1"> 
    *<input type="hidden" name="ShowOverDueBooks" value=" 
     <%=Request.QueryString "ShowOverDueBooks")%>" ID="Hidden2"> 
    <input type="hidden" name="StartDate" value=" 
     <%=Request.QueryString("StartDate")%>" ID="Hidden3"> 
    <input type="hidden" name="EndDate" value=" 
     <%=Request.QueryString("EndDate")%>" ID="Hidden4">* 

<a href="JavaScript:exportToExcel();"><img src='vimages/excel.gif' border=0></a> 
</form> 

Le problème est quand je veux utiliser ce code sous d'autres formes que je dois déclarer une variable cachée pour chaque variable de la demande. Existe-t-il un autre moyen de généraliser ce code de sorte que lorsque nous publions la page, nous conservons la même demande.

Merci.

Répondre

0

Encore une fois, Après quelques trys j'ai trouvé une solution générale qui ne pas utiliser les variables cachées, il suffit d'utiliser la propriété Request.QueryString:

<script language="Javascript"> 
function exportToExcel() 
{ 
    document.frm.hndExcel.value = "true"; 
    document.frm.action='LibGetStatistics.asp?' + '<%=Request.QueryString%>'; 
    document.frm.submit(); 
} 
</script> 


<form name="frm" method="post" ID="Form1"> 
    <input type="hidden" name="hndExcel" value="false" ID="Hidden1"> 
    <% if Request.Form("hndExcel") = "true" then 
     Response.ContentType = "application/vnd.ms-excel" 
    end if%> 

    <%= GetStatistics() %> 
      <a href="JavaScript:exportToExcel();"> 
       <img src='vimages/excel.gif' border=0></a> 
</form> 

J'espère que cela devrait aider les gens qui seront faire face à ce problème.