jQuery变量问题

时间:2013-06-23 17:52:04

标签: javascript jquery variables append

我尝试找到包含选择框的div的名称,然后将此div放入我的jQuery代码中其他位置使用的变量,似乎不起作用。另一段代码是在页面上添加额外的div,这些div在其中包含类.parent的选择框。然而,我添加了许多额外的div,下面的代码总是附加到第一个div添加,即使通过浏览器检查div结构按预期工作。我是jQuery的新手,所以不知道我是否遗漏了一些明显的东西,但我很确定下面的变量div应该每次重新定义.parent元素被更改,因为它是变量定义的一部分。当我为了检查变量名而运行警报时,它总是被定义为sub_cat_1。这对于第一个附加的show_sub_categories div类是正确的,但此后它应该是sub_cat_2,sub_cat_3等递增。如上所述,选择框肯定在页面上的正确div中,所以我只能通过下面的代码来解释我错过了一些简单的东西。 (底部的基本html供参考)

$('.parent').livequery('change', function () {
    var div = $(".parent").closest("div").attr("id");
    $(this).nextAll('.parent').remove();
    $(this).nextAll('input').remove();
    alert(div);
    $('#' + div).append('<img src="images/system/loader2323.gif" style="float:left" id="loader" alt="" />');

    $.post("get_chid_categories.php", {
        parent_id: $(this).val(),
    }, function (response) {

        setTimeout(function () {
            finishAjax(div, response);
        }, 400);
    });

    return false;
});

这只是为了向您展示附加div的基本结构。

<p id="add_field"> … </p>
<div class="show_sub_categories">
    <div id="sub_cat_1">
    <select class="parent" name="search_category"> … </select>
    <select class="parent" name="sub_category"> … </select>
    </div>
</div>
<div class="show_sub_categories">
    <div id="sub_cat_2">
    <select class="parent" name="search_category"> … </select>
    <select class="parent" name="sub_category"> … </select>
    </div>
</div>

我在http://www.0urs.com/fiddle/experience1.php添加了一个非常简化的版本,只是为了说明附加选择框的物理位置。

0 个答案:

没有答案