Тема: Додавання форм кнопкою та врахування нових значень формулами у коді
Підкажіть, добрі люди, як зробити кнопкою додавання нових значень Va, наприклад: натиснув кнопку ("+" під першим Va, наприклад) - з'явилося Va2, натиснув ще раз кнопку "+" (під - додалося Va3. І щоб наступні формули виводили результат для потрібної кількості Va (Скільки додав Va) стільки і результатів. (формули виконуються по черзі вдруг чого з першої по останню) (остання формула (So) - автономна по суті, їй потрібна тільки Va Значення, шо відбувалось у попередніх формулах їй без різниці. (коди питався (чесно) написать коротко, в оригіналі там через глобальні змінні заведені J, t1, t2, t3)
let resultTt;
let resultStd;
let resultTt1;
let resultSa;
let resultSo;
function getGlobal() {
return Number(document.querySelector('#JGlobal').value)
}
let J = getGlobal();
document.querySelector('#JGlobal').addEventListener('change', function() {
J = getGlobal();
})
function getT1Global() {
return Number(document.querySelector('#T1Global').value)
}
let t1 = getT1Global();
document.querySelector('#T1Global').addEventListener('change', function() {
t1 = getT1Global();
})
function getT2Global() {
return Number(document.querySelector('#T2Global').value)
}
let t2 = getT2Global();
document.querySelector('#T2Global').addEventListener('change', function() {
t2 = getT2Global();
})
function getT3Global() {
return Number(document.querySelector('#T3Global').value)
}
let t3 = getT3Global();
document.querySelector('#T3Global').addEventListener('change', function() {
t3 = getT3Global();
})
function getGlobalVa() {
return Number(document.querySelector('#VaGlobal').querySelector('input').value)
}
let va = getGlobalVa();
document.querySelector('#VaGlobal').addEventListener('change', function() {
va = getGlobalVa();
})
// 1 формула - значення Tt:
function breakWayTt() {
const form = document.querySelector('#formInputTt');
resultTt = va / (3.6 * J);
console.log(+resultTt.toFixed(4));
const result = document.querySelector('#resultTt');
result.innerText = `Результат: ${Number(resultTt.toFixed(4))}`;
return +resultTt.toFixed(4);
}
// 2 формула - значення Sтд:
function breakWayStd() {
const form = document.querySelector('#formInputStd');
const Sj = +form[0].value;
const L = +form[1].value;
const C = +form[2].value;
resultStd = Sj + va * t3 / 7.2 - L - C;
console.log(+resultStd.toFixed(2));
const result = document.querySelector('#resultStd');
result.innerText = `Результат: ${Number(resultStd.toFixed(2))}`;
return +resultStd.toFixed(2);
}
// 3 формула - значення Tt1:
function breakWayTt1() {
resultTt1 = resultTt - (Math.sqrt(resultTt ** 2 - (2 * resultStd) / J + (t3 ** 2) / 4));
console.log(+resultTt1.toFixed(4));
const result = document.querySelector('#resultTt1');
result.innerText = `Результат: ${Number(resultTt1.toFixed(4))}`;
return +resultTt1.toFixed(4);
}
// 4 формула - значення Sa:
function breakWaySa() {
const form = document.querySelector('#formInputSa');
const Tp = +form[0].value;
resultSa = (Tp - resultTt1) * (va / 3.6) + resultStd;
console.log(+resultSa.toFixed(2));
const result = document.querySelector('#resultSa');
result.innerText = `Результат: ${Number(resultSa.toFixed(2))}`;
}
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Formula 1</title>
</head>
<body>
<h1>При гальмуванні</h1>
<form>
<div>
<label>J1:</label>
<input type="text" name="team" id="JGlobal" list="team_list">
<datalist id="team_list">
<option value="6.9">6.9 м3 мокрий</option>
<option value="7.5">7.5 м3 сухий</option>
</datalist>
</div>
<form>
<div>
<label>t1:</label>
<select id="T1Global">
<option disabled>оберіть значення (треба обрать - не буде просто так працювати)</option>
<option>1.0</option>
</select>
</div>
</form>
<form>
<div>
<label>t2:</label>
<select id="T2Global">
<option disabled>треба обрать - не буде просто так працювати</option>
<option>0.2</option>
</select>
</div>
</form>
<form>
<div>
<label>t3:</label>
<select id="T3Global">
<option disabled>треба обрать - не буде просто так працювати</option>
<option>0.25</option>
</select>
</div>
</form>
<form id="VaGlobal">
<div>
<label>Va</label>
<input type="number">
</div>
</form>
<h1>Значення Tt</h1>
<form id="formInputTt"></form>
<button onclick="breakWayTt()">Результат V</button>
<h2 id="resultTt"></h2>
<h1>Значення Sтд</h1>
<form id="formInputStd">
<div>
<label>Sj</label>
<input type="number" value="9.3">
</div>
<div>
<label>L</label>
<input type="number" value="2.52">
</div>
<div>
<label>C</label>
<input type="number" value="0.838">
</div>
</form>
<button onclick="breakWayStd()">Результат Sтд</button>
<h2 id="resultStd"></h2>
<h1>Значення Tt1</h1>
<form id="formInputTt1"></form>
<button onclick="breakWayTt1()">Результат Tt1</button>
<h2 id="resultTt1"></h2>
<h1>Значення Sa</h1>
<form id="formInputSa">
<div>
<label>Tп</label>
<input type="number" value="1.91">
</div>
</form>
<button onclick="breakWaySa()">Результат Sa</button>
<h2 id="resultSa"></h2>
<button onclick="breakWaySo()">Результат So</button>
<h2 id="resultSo"></h2>
<button onclick="startAll()">Результат Загальний</button>
<h2 id="startAll"></h2>
</body>
</html>
javascripthtmlhtml5