绑定 html 时不会进行挖空表单提交



我有一个页面需要重定向到谷歌邮件页面。考虑我的 JSON 响应如下所示

var jsonResponse = {
'htmlData': '<html><head></head><body onLoad="document.myForm.submit()"><noscript><p>JavaScript is required. Enable JavaScript to use OAM Server.</p></noscript><form action="https://mail.google.com" method="post" name="myForm"></form></body></html>'
};

它绑定到挖空 html 页面,如下所示。在视图模型中,我们将从 json 响应中检索信息

(viewModel.js)
public responseHtml: KnockoutObservable<string> = ko.observable<string>();
var response= jsonResponse.htmlData;
this.responseHtml(response); 
(view.html)
<div id="kk">
  <div id="data" data-bind="html: responseHtml"></div>
</div>

在这里,我的渲染页面没有被重定向到gmail页面,它显示一个空白页面。你能告诉我是否有办法,我们可以重定向到该 url 页面。此视图.html在弹出窗口中呈现。

您的 json 有一个完整的网页,从标签开始。 您不能在div 中插入此 html。

如果您将此 json 作为 Ajax 请求获取,则可以执行以下操作:

            $.ajax(
            {
                .. ,
                success: function (data) {
                    document.open();
                    document.write(data.htmlData);
                    document.close();
                },
                error: function (jqXHR, textStatus, errorThrown) {
                    alert(jqXHR.responseText);
                }
            });

这样,您将实际网页与 json 响应中的网页"替换">

最新更新