如果变量不为空,则jquery附加变量

时间:2017-05-11 14:17:50

标签: jquery variables append

我的代码中有几个变量:

var     titre = bloc_movie_parent.attr("titre"),
    director = bloc_movie_parent.attr("director"),
    prod = bloc_movie_parent.attr("prod"),
    agency = bloc_movie_parent.attr("agency");

使用这个变量我正在使用a为每个函数构建一个div,并且在这个div中我有跨度,应该只显示该变量。

这是我的代码:

        $(".bloc_movie[type='"+ type + "']").each(function(){

            var titre = $(this).attr("titre"),
            director = $(this).attr("director"),
            prod = $(this).attr("prod"),
            agency = $(this).attr("agency"),
            hash = $(this).children('a').attr("href");

            $(".caption_slideshow").append('<div class="bloc_movie"><div class="legende"><div class="titre_caption">'+ titre +'</div><div><span class="initial_director">D/ </span>'+ director +'</div><div><span class="initial_prod">P/ </span>'+ prod +'</div><div><span class="initial_agency">A/ </span>'+ agency +'</div></div></div>');});

它工作正常。

但有时候我的变量是空的。当变量为空时,我希望隐藏跨度。 例如,如果“director”为空,我希望隐藏“initial_director”范围。同样的“prod”与“initial_prod”span&amp; “agency”与“initial_agency”。

我无法在追加功能中找到一种方法。

任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

首先定义名为.display-none{ display:none;}的css类 然后主要的想法是

if(!director){$('.initial_director').addClass("display-none")}

这样做的一种方式总是添加一个显示类 - 没有与你变量的值相连,就像这个“display-none”+ director 这里我们有两种情况,第一种是空的,然后结果是display-none,这将隐藏你的div 第二种情况将有一个值,因此结果将是display-nonevalue,它不会添加任何样式

<div><span class="initial_prod display-none"+prod+"\"">P/ </span>'+ prod +'</div>