如果某个Json属性为null或“”,则从DOM中删除元素

时间:2018-12-17 10:33:49

标签: javascript jquery html json

如果JSON属性为null或空字符串,我想从DOM中删除一个元素。但是我无法使其工作。

这是我的代码。

function projectJsonUi(){
    $.getJSON('/project.json',function(response){
        let foo_jpg = response.ressources.foo_jpg;
        let foo_pdf = response.ressources.foo_pdf;

            if(foo_pdf == null && foo_jpg == null){
                $("#myDiv").remove();
            }

}

我的JSON看起来像这样;

{"ressources":{
        "foo_jpg": null,
        "foo_pdf": null,
        ...
    },...
}

我做了一个foo_jpg的console.log(),我只是出于可读性把它切出了代码,它返回了null。我没有显示任何错误。我也尝试使用空字符串,结果相同。该请求有效,因为我已成功将其结果用于其他操作。

如果有人可以帮助我解决我的问题,那就太好了。

1 个答案:

答案 0 :(得分:0)

好吧,目前您只检查null,而不是空字符串。考虑到null""均为falsy values,您可以只使用Boolean if条件较少的选项。尝试改用此方法:

if (!(foo_pdf && foo_jpg)) {
    $("#myDiv").remove();
}

您还应该确保您的jQuery代码:

$("#myDiv").remove();

实际上链接到一个我认为看起来像这样的元素:

<div id="myDiv">Some content that should be hidden</div>

最后确保您的HTML页面中包含jQuery-在<head>标签中使用以下代码:

<script src="https://code.jquery.com/jquery-3.3.1.js"></script>

现在您的代码应该可以正常工作了。