簡體   English   中英

有沒有一種簡單的方法可以將完整的'script'標簽輸出為文本?

[英]Is there a Simpler way to output a complete 'script' tag as text?

我正在編寫一些AJAX,該AJAX會插入一個網頁,該網頁可能具有腳本和/或CSS,我試圖將這些腳本和CSS分離為幾個可運行所有形式的支持字段。

我相信在這種情況下,相關的代碼是AJAX終結器。

xmlhttp.onreadystatechange=function()
{
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
        var JavascriptContent = document.getElementsByName('AgendaJS')[0];
        var CSSContent = document.getElementsByName('AgendaCSS')[0];

        var Parser = new DOMParser();

        var xmlData = Parser.parseFromString(xmlhttp.responseText, "text/html");

        var ResponseBody = xmlData.getElementsByTagName('body')[0];

        tinymce.activeEditor.setContent(ResponseBody.innerHTML);

        var ResponseScripts = xmlData.getElementsByTagName('script');

        var i = 0;

        for( i = i; i <= ResponseScripts.length; i++ )
        {
            JavascriptContent.innerText += "\r\n" + String(ResponseScripts[i]);
        }
        return;
    }
}

這里的想法是向'AgendaJS'文本區域添加任何腳本標簽(最好是全文的直接副本)。

我現在的看法是,我幾乎要檢查script標記的各個元素,並從“ scratch”重新生成整個標記-所以我希望這里是我可以找到一種轉儲此元素的方式進入不會產生此結果的字段:

[object HTMLScriptElement]

我瀏覽了這里和其他地方的一些帖子,聲稱某些特定方法有效-但我尚未確認其中的任何內容。

清楚一點-我實際上希望對JS字段添加的結果是完整標簽和結束標簽,如下所示:

<script type="text/javascript" src="/tinymce/js/tinymce/tinymce.min.js"></script>

使用ResponseScripts[i].outerHTML而不是String(ResponseScripts[i])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM