Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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对xml数据进行排序?_Javascript_Jquery_Xml - Fatal编程技术网

如何使用javascript对xml数据进行排序?

如何使用javascript对xml数据进行排序?,javascript,jquery,xml,Javascript,Jquery,Xml,这是我的示例xml <markers> <marker location_id="1" title="test 1" distance="0.0832"/> <marker location_id="2" title="test 2" distance="3.1852"/> <marker location_id="3" title="test 3" distance="4.3761"/> <marker lo

这是我的示例xml

<markers>
    <marker location_id="1" title="test 1" distance="0.0832"/>
    <marker location_id="2" title="test 2" distance="3.1852"/>
    <marker location_id="3" title="test 3" distance="4.3761"/>
    <marker location_id="4" title="test 4" distance="3.3761"/>
</markers>

如何按距离、升序对这些条目进行排序?我想使用Javascript来完成它。

您可以使用
排序方法:

var $markers = $('.marker', xml);
$markers.find('marker').sort(function(a, b) {
     return parseFloat($(a).attr('distance')) > parseFloat($(b).attr('distance'));
}).appendTo($markers);

此代码假定您拥有的XML存储在
XML
变量中。

这可能有助于您添加将XML加载到
XML
变量中的代码。其中是
$marker
变量?var entries=xml.documentElement.getElementsByTagName('marker');在这之后,我如何使用这个?var$markers=$('.marker',xml)$markers.find('marker').sort(函数(a,b){return parseFloat($(a).attr('distance'))>parseFloat($(b).attr('distance');}).appendTo($marker);最后,我使用循环来获取数据。for(i=0;ixml
是OPs原始代码示例中的一个变量,因此我假设他已经有了这个变量
$marker
是一个打字错误,我现在已经纠正了。