我有这个代码
success: function(data) {
title = $(data).find('h1').text();
alert(data);
alert(title);
}
现在数据显示所有带有 h1 标签的 html 但标题显示为空
我有这个代码
success: function(data) {
title = $(data).find('h1').text();
alert(data);
alert(title);
}
现在数据显示所有带有 h1 标签的 html 但标题显示为空
如果您的数据包含以下内容:
<h1>heading</h1>
<p>content</p>
然后你需要在执行查询之前包装它:
var title = $('<div/>').html(data).find('h1').text();
alert(title);
该.find()
方法查找后代元素,因此如果您的 h1 元素位于“顶级”级别,则不会找到它。请尝试.filter()
:
title = $(data).filter('h1').text();
“基本上我想获取 h1 并放入变量中,然后将剩余的 html 放入数据变量中”
给定一个data
字符串参数,如下所示:
"<h1>My heading</h1><p>This is a test</p><p>This <span>is another</span> test.</p>"
你可以这样做:
var $data = $(data),
$title = $data.filter("h1"),
title = $title.text();
$data = $data.not($title);
以上结果产生了两个 jQuery 对象:$title
包含 h1 元素,以及$data
包含其余元素。从那里您可以使用$title.text()
获取 h1 的实际文本。
简单演示:http: //jsfiddle.net/yyKCW/
如果您的意思是要将“剩余的 html”作为字符串,那么您可以在$data
如上设置后执行以下操作:
var restAsString = $("<div></div>").append($data).html();
演示:http: //jsfiddle.net/yyKCW/1/