Newsgroup: it.comp.lang.javascript
Titolo: ajax e file asp che obbliga il download di un file

ciao a tutti, sono alle prime armi di ajax
Sostanzialmente, ho del codice ajax che richiama un url asp, il quale,
produce un file txt e ne oblbiga al download . il file asp funziona
perfettamente, ma ajax si rifiuta di aprirmelo. come posso ricevere da
ajax un file .txt?
Entro nel dettaglio:
//*************************** funzione ajax che richiama la pagina asp
function getURLsalva(url)
{
  //annullo le operazioni dell'oggetto XMLHttpRequest precedenti
  if(xmlhttp!=undefined){
  	xmlhttp.abort();
  }
  //alert(url);
  //creo l' oggetto
  var xmlhttp = getXMLHttp();
  if (!xmlhttp)
  {
    alert('XMLHttp non supportato dal browser');
    return false;
  }
  xmlhttp.open('GET', url, true);
  xmlhttp.onreadystatechange=function()
  {
    if (xmlhttp.readyState==4)
    {
	if (xmlhttp.status == 200)
      {
        //alert(xmlhttp.responseText);
	//****************** qui dovrei metterci un' istruzione che riceve il
file ma non so come
      }
      else if (xmlhttp.status == 404)
        alert('URL inesistente: ' + url);
      else
        alert('Errore: ' + xmlhttp.status);
    }
  }
  xmlhttp.send(null)
}
------------------------------------------------------------------
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
dim risultato
risultato="prova"
Response.ContentType = "text/html"
Response.Charset = "iso-8859-1"
Response.AddHeader "content-disposition", "inline; filename=file.txt"
' leggo dal file e scrivo nello stream di risposta , necessario per
ultimare il processo
Response.Write (risultato)
Response.End()
%>
qualcuno ha qualche consiglio ? grazie

 qualcuno ha qualche consiglio ? grazie
dovresti inserire un codice che funzioni sui vari browser del tipo:
var xhr;
if (window.XMLHttpRequest) {  xhr = new XMLHttpRequest();}
else if (window.ActiveXObject) { xhr = new
ActiveXObject("Msxml2.XMLHTTP");} else { throw new Error("Ajax is not
supported by this browser"); }
Però per risparmiare tempo consiglio l'uso di jquery scaricabile
presso 
jquery.com
devi studiarlo un pò all'inizio ma dopo risparmi parecchio tempo. Per
esempio ottieni il risultato con una semplice istruzione:
load(url,parameters,callback)
se desideri inserire il risultato in un div l'istruzione è:
$('#id_del_div').load(url);

 wrote:

a si si grazie, ma io ho solo la difficoltà che il file asp spedisce
un file.txt e non so come farglielo ricevere ad ajax.
il codice ajax l' ho già scritto
//*************************** funzione ajax che richiama la pagina asp
function getURLsalva(url)
{
  //annullo le operazioni dell'oggetto XMLHttpRequest precedenti
  if(xmlhttp!=undefined){
        xmlhttp.abort();
  }
  //alert(url);
  //creo l' oggetto
  var xmlhttp = getXMLHttp();
  if (!xmlhttp)
  {
    alert('XMLHttp non supportato dal browser');
    return false;
  }
  xmlhttp.open('GET', url, true);
  xmlhttp.onreadystatechange=function()
  {
    if (xmlhttp.readyState==4)
    {
        if (xmlhttp.status == 200)
      {
        //alert(xmlhttp.responseText);
        //
*******************************************************************************



Se decidi di usare jquery, risolvi facilmente il problema. La chiamata
alla variabile url può essere benissimo un file di tipo txt (vedi
messaggio precedente)