检索特定的XML节点jQuery [英] Retrieving a specific XML node, jQuery

查看:97
本文介绍了检索特定的XML节点jQuery的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在jQuery中处理XML相对较新.我试图基于其父元素中的属性从XML文件中检索特定节点.这是XML(简短版本):

Relatively new to dealing with XML in jQuery. I am trying to retrieve a specific node from an XML file based on an attribute in its parent element. Here is the XML (short version):

     <?xml version="1.0" encoding="UTF-8"?>
        <members>
           <member row="1">
              <firstName>John</firstName>
              <lastName>Smith</lastName>
              <status>Active</status>
              <title>Member</title>
              <memberSince>August, 2011</memberSince>
           </member>
          <member row="2">
              <firstName>Jane</firstName>
              <lastName>Smith</lastName>
              <status>Active</status>
              <title>Member</title>
              <memberSince>October, 2011</memberSince>
           </member>
     </members>

我了解如何在jQuery中使用$.get()检索XML的基础知识,但似乎无法弄清楚如何仅检索例如member row="2"的详细信息.

I understand the basics of how to retrieve XML using $.get() in jQuery but cannot seem to figure out how to retrieve just the details for, say, member row="2".

任何帮助将不胜感激.

更新

这是我用于此简单测试的jQuery,警报返回为undefined

Here is the jQuery I am using for this simple test, the alert returns as undefined

$(document).ready(function() {
    $.get(
        'member_xml.php', function($xml) {
            $xml = $($xml);
            row = 2;
            var test = $xml.find('member[row="' + row + '"]').attr('firstName');
            alert(test);
        },
        'xml'
    );
});

推荐答案

假定$xml是将XML包装在jQuery对象中:

Assuming $xml is your XML wrapped in a jQuery object:

$xml.find('member[row="2"]')

将选择要操作的行.

$xml.find('member[row="2"] firstName').text(); //returns Jane

此处是此工作的一个示例. XML选择器的工作方式类似于从DOM中选择元素.您所了解的大部分信息都可以在这里应用.

Here is an example of this working. XML selectors work similarly to selecting elements from you DOM; most of what you know about that can be applied here.

这篇关于检索特定的XML节点jQuery的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆