1

这就是我想要做的,但我是一个 jquery 菜鸟。

当页面加载时,我有 jquery 调用 levelone.php,它们打印类似的内容BEACH{!}OFFICE{!}HOME{!} 并创建我的第一个项目符号级别。

当点击一个子弹时,我怎么能调用 leveltwo.php?lvlone=HOME它来创建新的子弹,比如:BED ROOM{!}KITCHEN{!}等等

在新的子弹上也是 如此levelthree.php?lvlone=HOME&lvltwo=KITCHEN,它会用类似的东西创建新的子弹:TABLE{!}CHAIR{!}等等

到目前为止我的代码:

$(document).ready(function(){
    $.get("load_locations.php", function( my_var ) {
        var my_varspl = my_var.split('{!}');
        $('#myDiv').append("<ul id='newList'></ul>");
        for (var i = 0, e = my_varspl.length; i < e; i++) {
            if(my_varspl[i]!=''){
                $("#newList").append('<li>'+my_varspl[i]+'</li>');
            }
        }
     });
});
4

1 回答 1

0

您是否希望完全替换页面内容?或者只是将它们添加到页面中?如果您只想用新列表替换页面,只需将每个项目设置为链接。如果没有,以下应该有效:

<ul>
    <li id="home-wrap"><a href="" id="home" lvl="one">Home</a></li>
    ....
</ul>
<script language = "javascript">
//When the document is ready
$(document).ready(function() {
    //and someone clicks a link
    $("a").click(function(e) {
        //keep the page from reloading
        e.preventDefault();
        //get the id (in this case "home") of the clicked link
        var id = $(this).attr('id');
        //get the level of the clicked link
        var lvl = $(this).attr('lvl');
        //set the name of the space you want to use jQuery to load the new content in
        var wrapper = id + "-wrap";
        //load the page you want (in this case, pagename.php?lvlone=home) in the list item wrapper.
        $(wrapper).load("pagename.php?lvl" + lvl + "=" + id);
    });
});
</script>

因此,如果您单击主页,它应该将 url "pagename.php?lvlone=home" 处的页面加载到您单击的 <li> 中。为了向原始列表添加第二个子列表,“pagename.php?lvlone=home”应该输出另一个无序列表。说得通?

于 2013-02-07T20:40:03.633 回答