Jquery 非DIV元素上的.load()方法

Jquery 非DIV元素上的.load()方法,jquery,html,ajax,asynchronous,Jquery,Html,Ajax,Asynchronous,我构建了一个小站点,使用.load()方法加载元素的内容进行测试。如果我将目标元素放在标记中,则.load可以工作,但我无法让它仅处理目标元素,标记中的页面标题。有没有一种方法可以使用.load()加载内容,而不在我的HTML中每个受影响的元素周围放置标记 第1页的我的HTML: <body> <h1 id="pagetitle">Page 1</h1> <p>Some paragraph text</p> <a id="page

我构建了一个小站点,使用
.load()
方法加载元素的内容进行测试。如果我将目标元素放在
标记中,则.load可以工作,但我无法让它仅处理目标元素,
标记中的页面标题。有没有一种方法可以使用
.load()
加载内容,而不在我的HTML中每个受影响的元素周围放置
标记

第1页的我的HTML:

<body>
<h1 id="pagetitle">Page 1</h1>
<p>Some paragraph text</p>
<a id="page2">page 2</a>
</body>
$('a#page2').click(function () {
$("#pagetitle").load("page2.html #pagetitle > *");
});
从我读到的所有内容来看,单击#page2应该会从page2.html加载#pagetitle标记的内容,但内容没有添加,相反,内容(“第1页”)只是消失了

但是,如果我在
元素周围添加
标记并加载div:

$("div#pagetitle").load("page2.html div#pagetitle > *");

内容已被替换。但是,为了保持HTML的整洁,如果有更好的方法,我想避免这种情况。

*
选择
#pagetitle
元素的直接子元素,在您的markup
h1
元素中没有任何子元素,因此查询失败,并且不返回任何内容,移除
*
选择器,它应该可以工作。但是,它会将加载的
h1
元素添加到当前
h1
元素中,jQuery
.load()
方法使用
$。get()
实用程序函数,您可以使用此函数替换元素或更改当前
h1
元素的
innerHTML
属性。这使您能够更好地控制加载的html

$('#page2').click(function(event) {
   // event.preventDefault();
   $.get('page2.html', function(data) {
       $("#pagetitle").html(function() {
            return $(data).find('#pagetitle').html();
       });
   }, 'html');
});

这会失败,因为
h1
元素没有子元素。删除
*
@undefined,我注意到似乎在第一个元素中添加了第二个元素,还是我做了一些错误的事情?@Barmar,我的错误,我的确实有一个ID,但我在上面的摘录中忘记了它;据此编辑