0

我有一张地图。每当我点击声明时,它就会拉起分销商并出现。但是,如果数据库中没有结果,则会将前一个结果留在页面上。我想要的是,如果该特定状态没有结果,我希望它使容器为空。我该怎么做?

$(document).ready(function() {
    $("#SC").click(function() {
        if ($("div.SC_info").is(":hidden")) {
            $("#repinfo_container div.info_cont").removeClass("active");
            $("#repinfo_container div.info_cont").addClass("inactive");
            $("div.SC_info").slideDown("fast");
            $("div.SC_info").removeClass("inactive");
            $("div.SC_info").addClass("active");
            $("div.inactive").slideUp("fast");
        } else {}
    });
});​

更多细节看这张照片。http://i.imgur.com/vozKp.png这是一个交互式分布图。问题是例如在我有 CA(加利福尼亚)的结果(分销商)的数据库中。当我单击它时,它会拉起并显示在底部。但是,如果我单击 LA(state),因为没有结果,它会显示先前单击状态的结果。我想要的是,如果我对此状态没有任何结果,我希望它显示该容器而不是显示先前的结果。我希望现在它更有意义。

这是整个页面的源代码

pastebin.com/mxyDpZCx

4

2 回答 2

1

我想要的是,如果该特定状态没有结果,我希望它使容器为空。

$("#repinfo_container").empty();
于 2012-06-04T23:05:06.390 回答
1

你可以做:

$(selector).html('');

小费:

您应该缓存您的选择以获得更好的性能,例如,而不是这样:

$("div.SC_info").slideDown("fast");
$("div.SC_info").removeClass("inactive");       
$("div.SC_info").addClass("active");

你可以有这个:

var selection = $("div.SC_info");
selection.slideDown("fast");
selection.removeClass("inactive");       
selection.addClass("active");

这样,您选择元素一次并在选择上进行操作,而不是选择它们三次。

于 2012-06-04T23:05:51.897 回答