简体   繁体   中英

accessing child node of parent nodes in xml with certain child nodes only

Since I am working on a product software, I need help from you to please solve my problem.

I have a set of XML data in a variable in the string format.

The task is to find parent node which has child node called "PropertyReference". The structure of the XML looks something like below.

If the solution could solved using jquery syntax then it would great...

<StringAttribute Caption="comments" ColumnName="fccomments" Description="comments" MaxLength="54" Name="fccomments" />

<StringAttribute Caption="department" ColumnName="fdept" Description="department" MaxLength="2" Name="fdept">
  <PropertyReference Name="inwork_fdept" ObjectName="Department" PropertyName="fdeptno" UseIndexView="True" />
</StringAttribute>

<DecimalAttribute Caption="labor cost/hour" ColumnName="flabcost" ContentType="Price" DecimalDigits="2" Description="labor cost/hour" MaxValue="999.99" MinValue="-99.99" Name="flabcost">
  <DecimalAttribute.Format>
    <DecimalFormat DecimalDigits="2" Name="Price" />
  </DecimalAttribute.Format>
</DecimalAttribute>
<DecimalAttribute Caption="Avg Queue Hours" ColumnName="fnavgque" DecimalDigits="1" Description="average queue time - generated by scheduling" MaxValue="99999.9" MinValue="-999.9" Name="fnavgque" />
<BooleanAttribute Caption="Default Operations for this Work Center to be Scheduled" ColumnName="flschedule" Description="schedule?" Name="flschedule" />
<BooleanAttribute Name="flscheduleEnable">
  <BooleanAttribute.Triggers>
    <Trigger InverseOperation="True" Operator="Equals" Value="True">
      <Rule Target="flschedule" Type="ReadOnly" Value="OnClient" />
    </Trigger>
  </BooleanAttribute.Triggers>
</BooleanAttribute>
<IntegerAttribute Caption="Max Simultaneous Operations/Shift 1" ColumnName="fnmax1" DefaultValue="1" Description="maximum simmultaneous ops shift 1" MaxValue="99" MinValueAdherenceMessage="MAX_SIMUL_OPS" Name="fnmax1" />
<IntegerAttribute Caption="Max Simultaneous Operations/Shift 2" ColumnName="fnmax2" Description="maximum simmultaneous ops shift 2" MaxValue="99" MinValueAdherenceMessage="MAX_SIMUL_OPS" Name="fnmax2" />

Thank you in advance.

Maybe a little something like this:

var parentNode = $(yourXMLStringHere).find("PropertyReference").parent();

Demo: http://jsfiddle.net/yHXK5/

$('PropertyReference').parent();

For example:

console.log($('PropertyReference').parent().length);

$('PropertyReference').parent().each(function() {
    console.log($(this).attr('Caption'));
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM