Autor Zpráva
xxxadam577
Profil
Dobrej,
mám problém. když si to chci uložit do txt nebo html tak to neřádkuje :/
Vše jsem vám hodil sem :)
copywriter.xf.cz

Děkuji za pomoc :)
mimochodec
Profil
Mně nefunguje ani to uložení. Bez toho asi chybu řádkování neuvidím.
xxxadam577
Profil
Save as zvolíš třeba 123.txt a uložit
lionel messi
Profil
xxxadam577:
Ukáž kód, pri problémoch na strane servera je živá ukážka na dve veci. Ale výskyt chyby potvrdzujem.
xxxadam577
Profil
function save()
{
    var textToWrite = document.getElementById("Text").value;
    var textFileAsBlob = new Blob([textToWrite], {type:'text/plain'});
    var fileNameToSaveAs = document.getElementById("filename").value;

    var downloadLink = document.createElement("a");
    downloadLink.download = fileNameToSaveAs;
    downloadLink.innerHTML = "Download File";
    if (window.webkitURL != null)
    {
        downloadLink.href = window.webkitURL.createObjectURL(textFileAsBlob);
    }
    else
    {
        downloadLink.href = window.URL.createObjectURL(textFileAsBlob);
        downloadLink.onclick = destroyClickedElement;
        downloadLink.style.display = "none";
        document.body.appendChild(downloadLink);
    }

    downloadLink.click();
}

Tento script ukládá textareu
Keeehi
Profil
lionel messi:
Ukáž kód, pri problémoch na strane servera je živá ukážka na dve veci
Až na to, že je to javascriptová aplikace, takže kód je vidět.

Ale výskyt chyby potvrdzujem.
A to já zase ne. Viz


Ale kde je zakopaný pes vím. Ono totiž existuje více druhů nových řádků. Respektive různé operační systémy používají jiné.
Windows - \r\n
Linux - \n
starší Mac OS - \r
Podrobnější přehled.

Tvoje řádky jsou reprezentovány pouze \n (protože tak jsou reprezentovány v javascriptu), takže si s tím některé windows programy neumějí poradit.

Řešení je tedy detekovat operační systém uživatelea v případě windows provést textToWrite = textToWrite .replace(/\n/g, '\r\n')
xxxadam577
Profil
Ahoj, asi si na to kápl :) Na localu mi to funguje díky :)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: