我有一个“打印机友好版本”类型页面,它使用ajax调用在新窗口中打开页面,如下所示:
$.ajax({
type: "POST",
url: actionURL + qs, //qs is a query string
data: $(this).serialize(),
success: function (outputString) {
//$("#reportJSON").html(outputString).fadeIn();
var contentFromFirstPage = document.getElementById('reportArea').innerHTML;
var printContent = outputString;
var windowUrl = 'about:blank';
var uniqueName = new Date();
var windowName = 'Print' + uniqueName.getTime();
var printWindow = window.open("", windowName, 'scrollbars=1,menubar=1,height=800,width=600,resizable=1');
printWindow.focus();
printWindow.document.write(printContent);
printWindow.document.close();
}
}).error(function (response) {
alert("something went wrong here with PrintPreview!!!" + response);
});
但我发现在新页面中,脚本未正确加载,因此出现"jQuery is undefined"
错误。但是,当我重新加载页面时,页面加载正常。这让我相信jQuery可能只是在页面呈现之后才加载。有谁知道如何解决这个问题?基本上我只需要确保在页面开头有jQuery。