在变量中存储ajax类 - jquery

时间:2011-04-05 14:18:04

标签: jquery jquery-ui jquery-selectors


我有一个返回

的php文件file.php
<ul class="class1">
    <li class="class2"><a href="#" rel="">file</a></li>
    <li class="class3"><a href="#" rel="">file</a></li>
</ul>

通过我的javascript调用

<script type="text/javascript">
$(document).ready( function() {
        $('#list').fileTree({ root: 'docs/',
                              script: 'file.php',
                              },
                        function(file) {
                                open(file);
                        });
});
</script>

<div id="list">

内使用

我想在我的javascript中以单独变量的形式存储返回的class1,class2和class3(它们各不相同)。我怎样才能做到这一点?

提前致谢... :)

blasteralfred

1 个答案:

答案 0 :(得分:0)

您可以使用.map()获取类的数组。

ul位于<div id="list">内后,您可以执行此操作:

var classes = $('ul,li', '#list').map(function(i,v){
  return $(v).attr('class');
}).get();

您还可以在HTML字符串上运行.map()

var html = '<ul class="class1"><li class="class2"><a href="#" rel="">file</a></li><li class="class3"><a href="#" rel="">file</a></li></ul>';

var classes = $(html).add('li', html).map(function(i, v) {
    return $(v).attr('class');
}).get();

在这两种情况下,classes都是一个数组:[class1, class2, class3]

直播示例:http://jsfiddle.net/CRFft/