function calculateIncidenceRate() {
var newCasesInput = document.getElementById("newCases");
var populationAtRiskInput = document.getElementById("populationAtRisk");
var timePeriodInput = document.getElementById("timePeriod");
var resultDiv = document.getElementById("result");
var newCases = parseFloat(newCasesInput.value);
var populationAtRisk = parseFloat(populationAtRiskInput.value);
var timePeriod = parseFloat(timePeriodInput.value);
if (isNaN(newCases) || isNaN(populationAtRisk) || isNaN(timePeriod) || newCases < 0 || populationAtRisk <= 0 || timePeriod <= 0) {
resultDiv.innerHTML = "Please enter valid positive numbers for all fields. Population at risk and time period must be greater than zero.";
return;
}
// The formula for incidence rate is: (Number of New Cases / Population at Risk) * (1 / Time Period)
// Often, this is expressed per a specific unit of population (e.g., per 1,000 or 100,000 people)
// For simplicity, this calculator will provide the raw rate per person per unit of time.
// To express per 1000: multiply by 1000. To express per 100,000: multiply by 100000.
var incidenceRate = (newCases / populationAtRisk) / timePeriod;
resultDiv.innerHTML = "The incidence rate is: " + incidenceRate.toFixed(6) + " new cases per person per unit of time.";
resultDiv.innerHTML += "";
resultDiv.innerHTML += "To express this rate per 1,000 people, multiply by 1,000: " + (incidenceRate * 1000).toFixed(6);
resultDiv.innerHTML += "";
resultDiv.innerHTML += "To express this rate per 100,000 people, multiply by 100,000: " + (incidenceRate * 100000).toFixed(6);
}
.calculator-wrapper {
font-family: Arial, sans-serif;
max-width: 600px;
margin: 20px auto;
padding: 20px;
border: 1px solid #ddd;
border-radius: 8px;
background-color: #f9f9f9;
}
.calculator-form {
margin-bottom: 20px;
text-align: center;
}
.form-field {
margin-bottom: 15px;
text-align: left;
}
.form-field label {
display: block;
margin-bottom: 5px;
font-weight: bold;
}
.form-field input[type="number"] {
width: calc(100% – 12px);
padding: 8px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box; /* Include padding and border in the element's total width and height */
}
button {
background-color: #4CAF50;
color: white;
padding: 10px 20px;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 16px;
transition: background-color 0.3s ease;
}
button:hover {
background-color: #45a049;
}
.calculator-result {
text-align: center;
border-top: 1px solid #eee;
padding-top: 20px;
}
.calculator-result h3 {
margin-top: 0;
color: #333;
}
#result {
font-size: 18px;
color: #333;
font-weight: bold;
}