Creați CSV din html utilizând flash, javascript, clasic asp

Permiteți-mi să încep prin a afirma că obiectivul meu final este de a crea un buton Export către coma separat (.csv) sau Exportați în Excel pe o pagină a site-ului nostru. Site-ul nostru are în prezent un mecanism de căutare care returnează datele în XML. Acest xml este încărcat într-un obiect Microsoft.XMLDOM.

Dim objXMLDom
Set objXMLDOM = Server.CreateObject("Microsoft.XMLDOM")

...

Function LoadXML(strXML)
    objXMLDOM.loadXML(strXML)
end function

This xml data is parsed into a variable called myData and is displayed in an HTML Grid using different columns & rows. Like I said above, ideally I would like to add a button to the page that can export to csv or Excel. I've searched around and found that this is not an easy task when the code is in Classic ASP...so I found a semi-work around.

Soluționarea este de a utiliza Descărcați . Este un script jquery/flash care vă permite să copiați codul în HTML al unui element DOM și apoi să extrageți aceste date înapoi toate pe partea clientului . Funcționează în cea mai mare parte ... singura problemă pe care o am este adăugarea unui personaj de linie nouă. Cred că se elimină din HTML și se întoarce din nou.

Iată codul pentru modul în care am pus datele în element

for (i = 0; i < <%=RowCount %>; i++) {
    parent.document.getElementById('data').innerHTML += '\n';
    for (j = 0; j < <%=columnCount%>; j++) {
        parent.document.getElementById('data').innerHTML += myData[i][j];
        parent.document.getElementById('data').innerHTML += ',';

    }
};

Iată ce folosesc pentru al scoate din nou:

function load() {
    Downloadify.create('downloadify', {
        filename: function() {
            return document.getElementById('filename').value;
        },
        data: function() {
            return document.getElementById('data').value;
        },
        onComplete: function() { alert('Your File Has Been Saved!'); },
        onCancel: function() { alert('You have cancelled the saving of this file.'); },
        onError: function() { alert('You must put something in the File Contents or there will be nothing to save!'); },
        swf: 'media/downloadify.swf',
        downloadImage: 'images/download.png',
        width: 100,
        height: 30,
        transparent: true,
        append: false
    }

    );

}

I really don't know very much Flash, but I've tried putting in different strings ('
'
, ' ', even ";:;" ) and replacing them in the data : function part using Flash's replace method, but it seems to hang and never finish processing (i think this is because I needed to put the replace method in a while loop since the replace method only replaces one instance and I have many).

Orice ajutor va fi apreciat. Multumesc anticipat.

0
așa este pluginul Downloadify deja structurat pentru a funcționa. Cred că o să-l restrâng și să încerc să-l folosesc doar folosind ASP și Javascript ...
adăugat autor Mark, sursa
@wvxvw - Nu pot să cred că nu am văzut asta! :-) Esti sugestia a functionat. Dacă doriți să-l scrieți ca un răspuns, o voi accepta ca soluție. A trebuit să folosesc această întrebare și ca referință (deoarece datele mele se află într-o iframe) stackoverflow.com/questions/1301540/…
adăugat autor Mark, sursa
Exportim în csv, excel, txt și acces. Toate în mai puțin de 2000 de linii de cod: P Da, este un fel de durere. Deși 2000 include lucruri precum traducerea seturilor de înregistrări, decriptarea coloanelor etc.
adăugat autor Brian White, sursa

2 răspunsuri

de ce nu aveți ASP a crea un fișier .csv împreună cu pagina HTML? Se pare că ar fi mult mai ușor.

0
adăugat
Acest "răspuns" este mai degrabă un comentariu și ar trebui adăugat ca un comentariu la întrebare.
adăugat autor AnthonyWJones, sursa

Am avut o problemă de genul asta, când am folosit Flash și ASP împreună. Îmi amintesc că am sunat ASP din Flash și am atârnat. Cred că remedierea a fost de a adăuga un "răspuns.end" la sfârșitul paginii ASP. Pare să spună serverului: "Terminat. Înapoi la Flash acum." Îmi pare rău că nu pot fi mai sigură. A fost cu mult timp în urmă și nu găsesc codul.

0
adăugat
JavaScript, România - Moldova
JavaScript, România - Moldova
328 participanți

Comunitatea Română JavaScript: github.com/js-ro Pentru confort, opriți notificările. Parteneri: @node_ro, @php_ro, @python_ro, @seo_ro, @RomaniaGroup, @ai_ro, @Grupuri_IT Offtop: @holywars_ro Joburi: @js_jobs_ro Sponsored with ❤️ by ciupacabra.com