我有UL/LI。
用户将从菜单中选择它们,我需要实现的是获取整个路线的文本行。例如First Level 2 - Second Level 1 - Third Level 1
。
而且,与此同时,我想验证右侧没有更多选项。
例如,如果用户单击First Level 2 - Second Level 1
我想做某事以便让他知道在FL2 - SL1
之后有更多选择(带有true或false的bool变量将完成工作,我可以采取那里有一些警告)
我使用了text属性,但由于菜单是嵌套的而不是单级UL,因此无效。
任何想法都会非常感激。感谢。
答案 0 :(得分:1)
我使用了锚标记点击事件代替li的点击事件来获取路线并检查是否存在任何其他等级
答案 1 :(得分:1)
我可以在http://jsfiddle.net/KVs9C/找到解决方案的尝试。
$("#mylist a").click(function() {
var path = "",
moreChoices = $(this).next().size();
console.log("More choices? " + !!moreChoices);
$(this).parents("li").each(function() {
path = $(this).find("a:first").text() + " - " + path;
});
console.log(path);
});
与fuzionpro一样,我建议你将click-listener添加到anchor-elements而不是li-elements。可以通过遍历所有父li元素并在每个元素中附加第一个锚标记的文本来构造路径。该路径目前以盈余破折号结束,应该删除。