JSFiddle - React, Tailwind, and code Playground
HTML
<h1>Mass Shootings By State</h1>
<br>
<form id="largeform">
<select id="statedropdown">
<option value="0">Choose State:</option>
<option value="Alabama">Alabama</option>
<option value="Alaska">Alaska</option>
<option value="Arizona">Arizona</option>
<option value="Arkansas">Arkansas</option>
<option value="California">California</option>
<option value="Colorado">Colorado</option>
<option value="Connecticut">Connecticut</option>
<option value="Delaware">Delaware</option>
<option value="Florida">Florida</option>
<option value="Georgia">Georgia</option>
<option value="Hawaii">Hawaii</option>
<option value="Idaho">Idaho</option>
<option value="Illinois">Illinois</option>
<option value="Indiana">Indiana</option>
<option value="Iowa">Iowa</option>
<option value="Kansas">Kansas</option>
<option value="Kentucky">Kentucky</option>
<option value="Louisiana">Louisiana</option>
<option value="Maine">Maine</option>
<option value="Maryland">Maryland</option>
<option value="Massachusetts">Massachusetts</option>
<option value="Michigan">Michigan</option>
<option value="Minnesota">Minnesota</option>
<option value="Mississippi">Mississippi</option>
<option value="Missouri">Missouri</option>
<option value="Montana">Montana</option>
<option value="Nebraska">Nebraska</option>
<option value="Nevada">Nevada</option>
<option value="New Hampshire">New Hampshire</option>
<option value="New Jersey">New Jersey</option>
<option value="New Mexico">New Mexico</option>
<option value="New York">New York</option>
<option value="North Carolina">North Carolina</option>
<option value="North Dakota">North Dakota</option>
<option value="Ohio">Ohio</option>
<option value="Oklahoma">Oklahoma</option>
...
CSS
td {
text-align: center;
}
JavaScript
let mjdata = [{
state: 'Alabama',
case: 1,
fatalities: 101,
injured: 2,
total_victims: 13
}, {
state: 'Alaska',
case: 5,
fatalities: 12,
injured: 3,
total_victims: 513
}, {
state: 'Alabama',
case: 2,
fatalities: 3,
injured: 999,
total_victims: 1
}],
stateSelector = document.getElementById("statedropdown");
stateSelector.addEventListener('change', e => {
let selection = e.target.value,
cases = mjdata.filter(data => data.state === selection),
tbody = document.getElementById("answer4");
if (tbody.children.length > 0) Array.from(tbody.children).forEach(r => r.remove());
cases.forEach(data => {
let row = tbody.insertRow();
row.insertCell().textContent = data.case;
row.insertCell().textContent = data.state;
row.insertCell().textContent = data.fatalities;
row.insertCell().textContent = data.injured;
row.insertCell().textContent = data.total_victims;
});
document.getElementById("answer5").textContent = cases.length;
});