Встроенный скрипт не отображается во всплывающем окне предварительного просмотра в Chrome - PullRequest
1 голос
/ 30 января 2012

У меня есть некоторый JavaScript, который выдает POST в новое окно, чтобы показать мне предварительный просмотр содержимого, над которым я работаю. Вот в основном то, что я делаю:

$(document).ready(function () {
    $("#previewButton").click(function () {
        $("#previewform").remove();

        var form = document.createElement("form");
        form.setAttribute("id", "previewform");
        form.setAttribute("method", "post");
        form.setAttribute("action", "/Home/Preview");
        form.setAttribute("target", "formresult");

        var bodyField = document.createElement("input");
        bodyField.setAttribute("type", "hidden");
        bodyField.setAttribute("name", "Body");
        bodyField.setAttribute("value", $("#Body").val());
        var nameField = document.createElement("input");
        nameField.setAttribute("type", "hidden");
        nameField.setAttribute("name", "Slug");
        nameField.setAttribute("value", $("#Slug").val());
        var titleField = document.createElement("input");
        titleField.setAttribute("type", "hidden");
        titleField.setAttribute("name", "Title");
        titleField.setAttribute("value", $("#Title").val());
        form.appendChild(bodyField);
        form.appendChild(nameField);
        form.appendChild(titleField);
        document.body.appendChild(form);

        window.open("/Home/Preview", 'formresult', 'scrollbars=yes,menubar=yes,height=600,width=800,resizable=yes,toolbar=yes,status=yes');

        form.submit();
    });
});

Это отлично работает. Странная вещь, которую я заметил, это то, что когда я добавляю в контент некоторые встроенные гистеты, они не отображаются в Chrome. Тем не менее, они появляются в IE.

Это ошибка Chrome (или функция), или я что-то не так делаю?

1 Ответ

1 голос
/ 31 января 2012

Попробуйте это в гораздо более короткой форме (я переместил id отдельно, чтобы сжать список):)

$(document).ready(function () {
    $("#previewButton").click(function () {
        $("#previewform").remove();
        window.open("/Home/Preview", 'formresult',
                     'scrollbars=yes,menubar=yes,height=600,width=800');
        $("<form method='post' action='/Home/Preview' target='formresult'/>")
         .attr('id', 'previewform')
         .append($("<input type='hidden' name='Body'/>").val($("#Body").val()))
         .append($("<input type='hidden' name='Slug'/>").val($("#Slug").val()))
         .append($("<input type='hidden' name='Title'/>").val($("#Title").val()))
         .appendTo('body')
         .submit();
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...