我对jquery来说很新,我想选择一个被添加到列表中的元素。jquery,选择ul里面的附加ul
这里是追加后的HTML代码:
<!-- Show all folders in the directory -->
<ul data-level=".">
<li>
<a href="" class="folder">Angular</a>
</li>
<li>
<a href="" class="folder">Html</a>
</li>
<li>
<a href="" class="folder">PHP</a>
<!--this is appended-->
<ul data-level="./PHP">
<li>
<a href="">BankSimulation</a>
</li>
</ul>
</li>
</ul>
<script type="text/javascript" src="js/menu.js"></script>
,这里是JS文件:
$(document).ready(function()
{
$('.folder').parent().on('click', function()
{
var selector = this;
var dir = $(selector).parent().attr('data-level') + '/' + $(selector).text();
$.ajax({
url: 'init.php',
type: 'GET',
data: {
dir: dir,
JSON: true
},
dataType: 'JSON',
success: function(data)
{
appendList(selector, data);
},
error: function(error, errorCode, errorThrown)
{
console.log(error);
}
});
return false;
});
function appendList(selector, list)
{
var level = $(selector).parent().attr('data-level') + '/' + $(selector).text();
$(selector).append('<ul data-level="' + level + '">' + encodeToLiTag(list) + '</ul>');
}
function encodeToLiTag(element)
{
var summary = '';
for(data in element)
{
var link = element[data];
summary += '<li><a href>' + link + '</a></li>';
}
return summary;
}
});
我不觉得为什么它不工作的原因,代码似乎是有点简单,但我不知道事件是否因为它被追加而不起作用
如何制作的jsfiddle的问题..然后就可以快速得到答案。 – Rex