Javascript 将JSON输出添加到HTML ID

Javascript 将JSON输出添加到HTML ID,javascript,jquery,Javascript,Jquery,我使用jQuery读取JSON文件并将输出添加到HTML ID。到目前为止,一切都正常,但前提是我以后输出所有ID。 但是,如果我现在从输出中省略一个ID,例如,下面定义的所有ID将不再是输出。为什么会发生这种情况 $(document).ready(function() { function update_data() { $.getJSON("https://example.com/example.json", function(Data) {

我使用jQuery读取JSON文件并将输出添加到HTML ID。到目前为止,一切都正常,但前提是我以后输出所有ID。 但是,如果我现在从输出中省略一个ID,例如,下面定义的所有ID将不再是输出。为什么会发生这种情况

$(document).ready(function() {
    function update_data() {
        $.getJSON("https://example.com/example.json", function(Data) {
                    
            // Example 1
            document.getElementById('example1').innerHTML = Data.example1;
                            
            // Example 2
            document.getElementById('example2').innerHTML = Data.example2;
                    
            // Example 3
            document.getElementById('example3').innerHTML = Data.example3;
        });
    }
update_data();
setInterval(update_data, '30000');
});
https://example.com/example.json
在我的例子中返回如下内容:

{
    "example1": 725725,
    "example2": 47875,
    "example3": 04257
}
如果我想输出所有3个,它就会这样做。但是如果我只想输出example1和example3,它只会输出example1。为什么呢

是否有效:

<div id='example1'>Load</div>
<div id='example2'>Load</div>
<div id='example3'>Load</div>
加载
负载
负载
仅适用于示例1:

<div id='example1'>Load</div>
<div id='example3'>Load</div>
加载
负载

您必须测试
id
是否存在:例如,测试长度

function update_data() {
    $.getJSON("https://example.com/example.json", function(Data) {
                
        // Example 1
        if($('#example1').length){
           document.getElementById('example1').innerHTML = Data.example1;
         }               
        // Example 2
        if($('#example2').length){                       
            document.getElementById('example2').innerHTML = Data.example2;
        }        
        // Example 3
        if($('#example3').length){
           document.getElementById('example3').innerHTML = Data.example3;
        }
    });
}

但是如果我只想输出example1和example3,它只会输出example1
请向我们展示你的那部分代码,因为如果我运行你的代码,我已经创建了一个示例来显示问题。由于example2没有输出,example3也没有输出,原因不明。请参阅JSFIDLE中的错误
innerHTML为null..
,因为example2不在dom中。是的。这正是问题所在。但为什么会发生这种情况?如果我只显示示例1和示例2,它会工作。但是为什么我不能只显示example1和example3呢?因为您正在引发一个运行时错误,脚本将在此时结束,您将尝试访问一个在此时并不存在的对象的innerHTML属性。