将脚本添加到用户在文本框中插入的DOM

时间:2015-02-11 11:28:35

标签: javascript jquery html dom script-tag

我想要做的是从文本框中获取值并将其加载到容器中,如下所示:

var script = $('#txtbox').val();
$('.container').html(script);

我还尝试使用javascript再次创建脚本,找到用户插入的值并创建一个新值并将其附加到容器中:

var tempdiv = $("<div></div>").html($('#txtbox').val());
$(tempdiv).find('script').each(function(index,$element){
     var script = document.createElement("script");
    $.each($element.attributes, function(){
        if (this.specified){
            script.setAttribute(this.name, this.value);
        }
    });
    script.innerHTML = $($element).html();
    $('.container').append(script); 
});

但仍然无法工作,我得到:

  

无法执行&#39;写&#39; on&#39; Document&#39;:从异步加载的外部脚本写入文档是不可能的

有什么建议吗?也许尝试在iframe中加载脚本,以某种方式刷新DOM或者什么?

1 个答案:

答案 0 :(得分:0)

我通过使用iframe解决了这个问题。在javascript中,我刚刚创建了一个表单和一个隐藏的输入字段,这些字段被提交到iframe加载的页面。

查看JavaScript post request like a form submit了解详情。