Задать вопрос
Behemoth911
@Behemoth911

Как сделать добавление форм кнопкой и чтобы последующие формы учитывали добавление новых (добавленных) значений?

Подскажите как сделать кнопкой добавление новых значений Va, например: нажал кнопку ("+" под первым Va ,например) - появилось Va2, нажал еще раз кнопку "+" (под - добавилось Va3. И чтобы последующие формулы выводили результат для нужного количества Va (сколько добавил Va) столько и результатов.

<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>


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))}`;

}

//5 формула - значение So
function breakWaySo() {
    resultSo = (t1 + t2 + Number(t3 * 0.5)) * (+va / 3.6) + (Math.pow(+va, 2) / (25.92 * J));
    console.log(+resultSo.toFixed(2));
    const result = document.querySelector('#resultSo');
    result.innerText = `Результат: ${Number(resultSo.toFixed(2))}`;

}

function startAll() { breakWayTt(); breakWayStd(); breakWayTt1(); breakWaySa(); breakWaySo();
}
  • Вопрос задан
  • 52 просмотра
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@mrStrike
$.clone
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы