Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery xml解析以查找具有特定属性的节点,而无需loooping_Javascript_Jquery_Xml_Html - Fatal编程技术网

Javascript jquery xml解析以查找具有特定属性的节点,而无需loooping

Javascript jquery xml解析以查找具有特定属性的节点,而无需loooping,javascript,jquery,xml,html,Javascript,Jquery,Xml,Html,我有这个xml文件- payload.xml <Remoting><Response> <Controller id="c"> <Messages/> <StructData name="Root"> <F name="@ErrorOccured"/> <F name="@TransitionErrorOccurred"/> <List

我有这个xml文件- payload.xml

<Remoting><Response>
    <Controller id="c">
    <Messages/>
    <StructData name="Root">
        <F name="@ErrorOccured"/>
        <F name="@TransitionErrorOccurred"/>
        <List name="DataList" aspect="Delete"/>
        <List name="DataList" aspect="New">
            <Item name="001">
                <F name="CreationDateTime" >2012/04/26</F>
                <F name="ProductDescription" />
            </Item>
            <Item name="01F">
                <F name="CreationDateTime" >2012/08/09</F>
                <F name="ProductDescription" >Smartphone 16GB</F>
            </Item>                 
            <Header name="@tableSize">316 </Header>
        </List>
    </StructData>
    <Events>
        <Event event="$Core" operation="$AddRow" path="/Root/DataList"/>
    </Events>
    </Controller>
    </Response></Remoting>

2012/04/26
2012/08/09
智能手机16GB
316
我想提取具有特定名称和特定属性的节点,例如,如果我想提取

<Item name="001">
                <F name="CreationDateTime" >2012/04/26</F>
                <F name="ProductDescription" />
            </Item>

2012/04/26
有没有一种方法可以在不遍历.find('Item')的所有元素的情况下以一种方式执行此操作

e、 g.我可以执行类似.find('Item')->attribute name='001'这样的操作吗


谢谢

本教程可能会有所帮助:下面是一个您可以使用的代码示例

xmlDoc=parser.parseFromString('<Remoting><Respon...oller>    </Response></Remoting>',"text/xml");
items = xmlDoc.getElementsByTagName('Item');
firstItem = items[0];
xmlDoc=parser.parseFromString(“”,“text/xml”);
items=xmlDoc.getElementsByTagName('Item');
firstItem=项目[0];

本教程可能会有所帮助:以下是您可以使用的代码示例

xmlDoc=parser.parseFromString('<Remoting><Respon...oller>    </Response></Remoting>',"text/xml");
items = xmlDoc.getElementsByTagName('Item');
firstItem = items[0];
xmlDoc=parser.parseFromString(“”,“text/xml”);
items=xmlDoc.getElementsByTagName('Item');
firstItem=项目[0];

是的,您可以使用以前使用的jQuery选择器来完成

(打开控制台查看记录的内容)

假设您的xml位于var xmlText中,您可以使用

var $xml = $($.parseXML(xmlText));
然后您使用

var yourItem = $xml.find('item[name="001"]'); // note the lowercase

是的,您可以使用以前使用的jQuery选择器来完成

(打开控制台查看记录的内容)

假设您的xml位于var xmlText中,您可以使用

var $xml = $($.parseXML(xmlText));
然后您使用

var yourItem = $xml.find('item[name="001"]'); // note the lowercase

令人惊叹的。正是我想要的。谢谢,太棒了。正是我想要的。谢谢