我有像
这样的xml<contact>
<name>
<firstname>Ravindra</firstname>
</name>
<name>
<firstname>Marya</firstname>
<lastname>suthar</lastname>
</name>
</contact>
当我申请查找功能时,“firstname”工作正常但最后一个鬃毛与第一个“名称”部分相关联。
我正在做某事
var MyName=$(xml).find("firstname").eq(0).text()+" "+$(xml).find("lastname").eq(0).text();
结果我得到了“Ravindra Suthar”但结果应该是“Ravindra”
请告诉我如何在没有“if else”的情况下实现这一目标。
答案 0 :(得分:0)
你可以把它全部放在一个衬里,但为了清楚起见:
var $firstName=$(xml).find("firstname").eq(0);
var firstName = $firstName.text();
var lastName = $firstName.siblings("lastname").text();
var MyName = firstName +" "+lastName;
使用jquery的漂亮siblings
方法,我们仅在我们之前找到的第一个名称的级别搜索姓氏。
var MyName = $(xml).find("firstname").eq(0).text() +" "+$(xml).find("firstname").eq(0).siblings("lastname").text();
答案 1 :(得分:0)
eq()查找集合中第一个匹配的元素。所以你要查找所有的姓氏并获得集合中的第一个,这就是suthar。
你必须找到第一个'名字'然后选择第一个和最后一个名字:
$(xml).find('name:nth-child(1)>firstname').text() + " " + $(xml).find('name:nth-child(1)>lastname').text()
答案 2 :(得分:0)
$(xml).find("name").each(function () {
var MyName = $(this).find("firstname").text() + " " + $(this).find("lastname").text();
alert(MyName);
});
首次提醒 - &gt;拉温德拉
第二次提醒 - &gt;玛丽亚苏塔尔