Добавить скрипт в DOM, который пользователь вставляет в текстовое поле

То, что я пытаюсь сделать, это получить значение из текстового поля и загрузить его в контейнер следующим образом:

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); 
});

но все равно не работает, я получаю:

Не удалось выполнить "запись" в "Документ": невозможно выполнить запись в документ из асинхронно загруженного внешнего скрипта

Какие-либо предложения? может быть, попробуйте загрузить скрипт в iframe, обновить DOM или как?

1 ответ

Я решил это с помощью iframe. В javascript я только что создал форму и скрытое поле ввода, которые отправляются на страницу, которую загружает iframe.

Проверьте JavaScript отправьте запрос как форма отправки для получения дополнительной информации.

Другие вопросы по тегам