Autor Zpráva
Chuchycek
Profil
Ahoj,

snažím se vyřešit takový problém. Nahrávám skrz javascript html formulář včetně javascriptů. Formulář se mi v pohodě stáhne na web, pouze javascripty se nechtějí nahodit. Dokázal by mi někdo poradit, jak ty javascriptový soubory nahodit?

Přikládám javascript, který tahá data
document.addEventListener("DOMContentLoaded", function(event) {
    var params = document.body.getElementsByClassName('bf_script');
    var classList = params[0].classList;
    var hash = classList[1];

    var xhttp = new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState === 4 && this.status === 200) {
            document.getElementById("bf_form_" + hash).innerHTML = this.responseText;
        }
    };
    xhttp.open("GET", "http://app.local:8888/api/form/?hash=" + hash, true);
    xhttp.send();
});

a stahuje se tohle.
<script src="{$absoluteUrl}/js/jquery/jquery-3.2.1.min.js"></script>
<script src="{$absoluteUrl}/js/jquery/jquery-ui.js"></script>
<script src="{$absoluteUrl}/js/nette/nette.ajax.js"></script>
<script src="{$absoluteUrl}/js/nette/live-form-validation.js"></script>
<script src="{$absoluteUrl}/js/main.js" async></script>
<script>
    LiveForm.setOptions({
        messageErrorPrefix: '',
        wait: 500
    });
</script>
<div>supr čupr formular</div>

Ještě dodám, že se snažím vložit jinou stránku do stránky přes javascript a nechci to dělat přes IFRAME.

Díky
Mlocik97
Profil
Chuchycek:
v jQuery to jde jednoducho uložením HTML (a stáhnutím napr. skrz AJAX) do nejakej premennej (napr. myHTML), a potom iba

$('el').html(myHTML);

v Angulari, Vue a pod. máte templatovací systém.

Nevím inak proč používate absolútnu cestu k HTML. A taky proč nemôžete to JS stáhnout rovno?
Chuchycek
Profil
1, používám čistý javascript, nebot na webech na kterých se to použije, nemusí být jquery, a nechci ani vkládat závislost na jquery
2, absolutní cesta tam je z důvodu, když tento skript volám na jiném webu, tak jsou tyhle soubory potřeba
Mlocik97
Profil
Chuchycek:
když to taháte z jiného webu, nebolo by vhodnejšie to stiahnuť na serversidu, a pre client side servívovať zo svojho serveru?
Chuchycek
Profil
Mlocik97:
Tohle řešení trochu nechápu.. vždyt já to přeci všechno připravím u sebe na seberu a nechám ho stáhnout jen potřebna html data?
Mlocik97
Profil
Chuchycek:

pred chvílou ste tvrdili že ten html sťahujete z iného webu, a teraz tvrdíte že všechno pripravíte u sebe na serveru. Tak teraz nechápem ja.... Takže ešte raz otázka,... ako stahujete tie dáta z iného webu? stiahnete je na svoj server a potom servírujete klientovy, alebo naservírujete klientovy len svoju časť, a dáta z iného webu si klient vyžiada napr. skrz AJAX, teda využívate CORS?
Chuchycek
Profil
Tak jinak..
Mám aplikaci na tvorbu nějakých "univerzálních" formulářů, ta aplikace vygeneruje link, který obsahuje ten formulář. A já ten formulář potřebuji dostat, co nejelegantnějším způsobem na xxx webů, ty weby nemusí být vůbec v doméně..

a já chci vytvořit, co nejmenší skript pro jeho zobrazení.. a jak jsem psal nechci ho zobrazovat přes IFRAME

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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

0