我正在尝试使用ajax调用打开一个包含检索到的视图及其数据的新浏览器窗口。
$.ajax({
type: 'POST',
url: redirectToANewWindow,
dataType: 'html',
data: { filterValue: searchValue },
success: function (result) {
var NewBrowserWindow = window.open('', '_blank', 'height=500,width=900,scrollbars=yes,location=no');
$(NewBrowserWindow.document.body).html(result);
}
});
字段及其数据显示在新打开的浏览器上。但是返回的视图上没有CSS,因此所有字段都很混乱。我的主要CSS在其他地方声明,出于某种原因,我无法在返回的视图中声明它。我的问题是,如何返回此视图并附加CSS文件?
我试过了,
success: function (result) {
var styles = "<link rel='stylesheet' href='../Content/GlobalStyle.css' />";
var NewBrowserWindow = window.open('', '_blank', 'height=500,width=900,scrollbars=yes,location=no');
$(NewBrowserWindow .document.head).html(styles);
}
但是虽然我可以在html上看到添加的CSS引用,但它不起作用。难道它找不到我引用的文件吗?
我顺便使用 MVC 。
答案 0 :(得分:2)
试试这段代码:
$('<link/>', {
rel: 'stylesheet',
type: 'text/css',
href: '../Content/GlobalStyle.css'
}).appendTo('Head');
答案 1 :(得分:0)
未经测试的代码但请尝试:
var addStylesheetTo = function(url, target) {
var link = $('<link/>');
link.attr({
type: 'text/css',
rel: 'stylesheet',
href: url
});
$(target).append(link);
};
addStylesheetTo('/the/url/of/your/stylesheet.css', NewBrowserWindow.document.head);