diff --git a/public/js/dropDownList.js b/public/js/dropDownList.js
index c63e6c6160358f54ca44d88d0ad5b1ba6b1306d9..f02ff4bb39b4ff14256282fa2221e59104e7df55 100644
--- a/public/js/dropDownList.js
+++ b/public/js/dropDownList.js
@@ -173,6 +173,13 @@ const getSelectedOptionsFromDropDownLists = function () {
     "#drop-down--sampling-rate"
   ).value;
 
+  if (
+    selectedBuilding === "--Select--" ||
+    selectedSensor === "" ||
+    selectedSamplingRate === ""
+  )
+    return;
+
   return [selectedBuilding, selectedSensor, selectedSamplingRate];
 };
 
@@ -223,10 +230,12 @@ const getBuildingSensorSamplingRateAbbreviation = function (
   return [buildingAbbrev, phenomenonAbbrev, samplingRateAbbrev];
 };
 
-const runFromOptionThree = async function () {
+const selectChartTypeFromDropDown = async function () {
   try {
     const selectedOptions = getSelectedOptionsFromDropDownLists();
 
+    if (selectedOptions === undefined) return;
+
     const abbreviationsArr = getBuildingSensorSamplingRateAbbreviation(
       ...selectedOptions
     );
@@ -235,6 +244,12 @@ const runFromOptionThree = async function () {
       ...abbreviationsArr
     );
 
+    const selectedChartType = document.querySelector(
+      "#drop-down--chart-type"
+    ).value;
+
+    if (selectedChartType === "--Select--") return;
+
     const URL_DATASTREAM = getDatastreamUrl(BASE_URL, selectedDatastream);
 
     const URL_OBSERVATIONS = getObservationsUrl(BASE_URL, selectedDatastream);
@@ -255,15 +270,17 @@ const runFromOptionThree = async function () {
     const combinedObs = metadataPlusObservations[0];
     const datastreamMetadata = metadataPlusObservations[1];
 
-    drawLineChartHC(
-      formatSTAResponseForLineChart(combinedObs),
-      formatDatastreamMetadataForChart(datastreamMetadata)
-    );
-
-    drawHeatMapHC(
-      formatSTAResponseForHeatMap(combinedObs),
-      formatDatastreamMetadataForChart(datastreamMetadata)
-    );
+    if (selectedChartType === "Line") {
+      drawLineChartHC(
+        formatSTAResponseForLineChart(combinedObs),
+        formatDatastreamMetadataForChart(datastreamMetadata)
+      );
+    } else if (selectedChartType === "Heatmap") {
+      drawHeatMapHC(
+        formatSTAResponseForHeatMap(combinedObs),
+        formatDatastreamMetadataForChart(datastreamMetadata)
+      );
+    }
   } catch (err) {
     console.error(err);
   }
@@ -271,4 +288,4 @@ const runFromOptionThree = async function () {
 
 document
   .querySelector("#drop-down--chart-type")
-  .addEventListener("change", runFromOptionThree);
+  .addEventListener("change", selectChartTypeFromDropDown);