jQuery允许您更新页面的单个部分(如果它具有ID:
)$('#myDiv').load('http://my/url/#myDiv');
我需要更新页面的几个部分(围绕表单)。我意识到我可以:
.load(...)
分离整个页面并重新附加我的旧表单......但这有一种习惯于搞乱焦点状态。我想我之后的内容是下载页面(作为jQuery对象)然后交叉更新特定部分的好方法。我假设现有.load()
代码的工作原理。但是我该怎么做呢?
答案 0 :(得分:1)
一种解决方案是使用$.get
:
$.get('http://my/url/', function(response) {
var $page = $(response);
$("#myDiv1").replaceWith($page.find("#myDiv1"));
$("#myDiv2").replaceWith($page.find("#myDiv2"));
});
需要注意的一件重要事情是,jQuery会删除<html>
,<body>
或<header>
等元素,因此如果该元素是其中之一的直接后代,则可以使用{ {1}}找到它。