html和javascript之间的不一致性

html和javascript之间的不一致性,javascript,html,function,Javascript,Html,Function,我有以下四个部门: <div id="air-trigger" onclick="getWidgetData('air-trigger'); getWidgetAirChart();"></div> <div id="soil-trigger" onclick="getWidgetData('soil-trigger'); getWidgetSoilChart();"></div> <div id="water-trigger" onclic

我有以下四个部门:

<div id="air-trigger" onclick="getWidgetData('air-trigger'); getWidgetAirChart();"></div>
<div id="soil-trigger" onclick="getWidgetData('soil-trigger'); getWidgetSoilChart();"></div>
<div id="water-trigger" onclick="getWidgetData('water-trigger'); getWidgetWaterChart();"></div>
<div id="storage-trigger" onclick="getWidgetData('storage-trigger'); getWidgetStorageChart();"></div>

getWidgetAirChart、getWidgetSoildChart、getWidgetWaterChart、getWIdgetStorageChart方法填充数据并在相应的div下显示图表。如果我先选择“水”选项卡,那么所有其他选项卡都不会使用onclick事件显示任何数据。但是,如果我最后使用“水”选项卡,一切正常。我不明白为什么会发生这种事。请帮忙。先走一步

控制台中有任何错误吗?如果getWidgetWaterChart是断开路径的一部分,那么为什么不包括该函数的代码呢?该代码可能有很多@Lugia:一个id未定义。我以前没注意到。我解决了这个问题。谢谢-
function getWidgetData(name){

    var curEl = document.getElementById('time-series');
    curEl.className = "active";

       widgetEl = document.getElementById("soil-chart");

       widgetEl4 = document.getElementById("air-chart");

       widgetEl5 = document.getElementById("water-chart");

       widgetEl6 = document.getElementById("storage-chart");

    //  alert(name);
        var el = document.getElementById('soil-chart');
        el.className = "";


        var el4 = document.getElementById('air-chart');
        el4.className = "";


        var el5 = document.getElementById('water-chart');
        el5.className = "";


        var el6 = document.getElementById('storage-chart');
        el6.className = "";

          if(name == 'air-trigger'){
            widgetEl4.innerHTML = document.getElementById('air-chart').outerHTML; 

                el4.className = "show active";
                el.className = "hide";
                el5.className = "hide";
                el6.className = "hide";

              }

          if(name == 'soil-trigger'){
          widgetEl.innerHTML = document.getElementById('soil-chart').outerHTML; 
            el.className = "show active";
            el4.className = "hide";
            el5.className = "hide";
            el6.className = "hide";
          }

          if(name == 'water-trigger') {

                 widgetEl5.innerHTML = document.getElementById('water-chart').outerHTML; 

                        el5.className = "show active";
                        el.className = "hide";
                        el4.className = "hide";
                        el6.className = "hide";
                  }


          if(name == 'storage-trigger'){
                 widgetEl6.innerHTML = document.getElementById('storage-chart').outerHTML; 

                    el6.className = "show active";
                    el.className = "hide";
                    el4.className = "hide";
                    el5.className = "hide";
                  }


    }