您好我是Jquery的新手并且我的脚本有问题,我想使用jquery访问我的xml文件中的第二个'heading'标记。 这是我的脚本,但我想做的是为航向的第二个值分配一个可变的。
$(document).ready(function()
{
$.ajax({
type: "GET",
url: "task.xml",
dataType: "xml",
success: displayXml
});
function displayXml(data){
$(data).find("tasks").each(function() {
var heading = $(this).find("heading").text();
});
}
}); // doc ready
这是我的xml doc。我正在寻找的是像
name = $(“heading”,2).text();价值是'新工作'。有人可以帮我这个吗?
<?xml version="1.0" encoding="utf-8"?>
<tasks>
<heading>Home </heading>
<heading>New Job </heading>
<heading>System </heading>
</tasks>
答案 0 :(得分:2)
这是你在寻找什么?
$("heading:eq(1)",data).text();
正如您在文档中看到的http://api.jquery.com/jQuery/ jQuery()
(与$()
相同)获得第二个参数“context”,在您的情况下,这将是data
和jQuery将在此上下文中搜索而不是您的HTML / DOM。
答案 1 :(得分:1)
:nth-child(2)
会返回所有其他选择器,而不仅仅是第二个。您需要的选择器是:eq(1)
。这将获得与前一个选择器匹配的第二项:
$(this).find('heading:eq(1)').text();
请注意eq
使用从0开始的索引(即第一项为0,第二项为1等)。
有关详细信息,请参阅jQuery API:http://api.jquery.com/eq-selector/