我下面有这个xml文件,想比较每个子元素的开始时间和结束时间子元素。
<Carpark>
<carparkid>CP1</carparkid>
<DayType>
<daytypeid>Weekday</daytypeid>
<starttime>7:00am</starttime>
<endtime>5:00pm</endtime>
<rate>$1.00</rate>
<unit>per 20 min</unit>
</DayType>
<DayType>
<daytypeid>Weekday</daytypeid>
<starttime>7:00am</starttime>
<endtime>5:00pm</endtime>
<rate>$0.60</rate>
<unit>per 30 min</unit>
</DayType>
<DayType>
<daytypeid>Weekday</daytypeid>
<starttime>5:00pm</starttime>
<endtime>10:30pm</endtime>
<rate>$0.60</rate>
<unit>per 30 min</unit>
</DayType>
<DayType>
<daytypeid>Weekday</daytypeid>
<starttime>10:30pm</starttime>
<endtime>7:00am</endtime>
<rate>$0.60</rate>
<unit>per 30 min</unit>
</DayType>
</CarPark>
我要检查的是速率和单位是否类似于下一个子元素,直到它遍历所有DayType。只要它们彼此相似,它将使用具有率和单位的第一个出现的子元素的开始时间,并使用下一个结束时间。
基于上面的示例,我想要这样的输出:
平日
7:00 am to 5:00 pm($ 1.00每20分钟
7:00 am至7:00 am每30分钟$ 0.60
您可以看到,从7:00 am到7:00 am,只要费率和单位彼此相似,就会使用它的开始时间直到最后一个结束时间。
var arStartTime = [];
var arendTime = [];
var arRate = [];
var arUnit = [];
//Snippet of Ajax function I am using.
var xmlNode = $(xml).find("DayType");
xmlNode.each(function() {
arStartTime = $.trim($(this).children('starttime').text());
arendTime = $.trim($(this).children('endtime').text());
arRate = $.trim($(this).children('rate').text());
arUnit = $.trim($(this).children('unit').text());
});
contLine += $.trim($(this).children('daytypeid').text());
$('#xmlcontent').html(contLine);
我在下一步该怎么做,有人可以帮助我吗?