我有一个Ajax调用:
callAjaxController: function(){
var url = Routing.generate('ajax_price');
$.ajax({
type: "GET",
url: url,
cache: false,
success: function (data, status) {
// get the <body> markup to replace my actual body page
}
})
},
在我的Ajax响应中,我希望获得<body>
标记来替换我的实际正文页。
有可能吗?我怎么能这样做?
答案 0 :(得分:0)
假设您的请求检索了您要使用的body
标记的内容,您可以使用新内容设置当前html()
元素的body()
,如下所示:
success: function (data, status) {
$('body').html(data);
}
或者,如果回复包含<body>
标记及其中的所有内容,请使用replaceWith()
:
success: function (data, status) {
$('body').replaceWith(data);
}
另请注意,因为您已经销毁了DOM中的所有现有元素,所以您需要使用委托事件处理程序,如果您有任何在代码中处理的现有事件。