如何在输入标签中使用onchange存储数据?


这是我的html:

<form action="store.php" method="POST"
     <input type="text" name="distribution" id="distro" value="8%" onClick="this.select();" onchange="calc('Q1','E2','T3','distro','A4','Ave')">
     <select name="Q1" id="Q1" onchange="calc('Q1','E2','T3','distro','A4','Ave')">
         <option value="0">0</option>
         <option value="1">1</option>
         <option value="2">2</option>
         <option value="3">3</option>
         <option value="4">4</option>
         <option value="5">5</option>
     </select>
     <select name="E2" id="E2" onchange="calc('Q1','E2','T3','distro','A4','Ave')">
         <option value="0">0</option>
         <option value="1">1</option>
         <option value="2">2</option>
         <option value="3">3</option>
         <option value="4">4</option>
         <option value="5">5</option>
     </select>
     <select name="T3" id="T3" onchange="calc('Q1','E2','T3','distro','A4','Ave')">
         <option value="0">0</option>
         <option value="1">1</option>
         <option value="2">2</option>
         <option value="3">3</option>
         <option value="4">4</option>
         <option value="5">5</option>
     </select>
     <input type="text" name="A4" placeholder="A4" id="A4" disabled onchange="calc('Q1','E2','T3','distro','A4','Ave')">
     <input type="text" name="Ave" placeholder="Ave" id="Ave" disabled onchange="calc('Q1','E2','T3','distro','A4','Ave')">
     <input type="submit" value="Save">
</form>


这是我的javascript:

function calc(Q1id,E2id,T3id,distroid,A4id,Aveid){
    var Q1 = parseInt(document.getElementById(Q1id).value);
    var E2 = parseInt(document.getElementById(E2id).value);
    var T3 = parseInt(document.getElementById(T3id).value);
    var distro = parseInt(document.getElementById(distroid).value);
    var result = parseFloat(distro)/100;

    var ratingAve = document.getElementById(A4id).value = parseFloat(Math.round(Q1+E2+T3)/3).toFixed(2);

    document.getElementById(Aveid).value = parseFloat(ratingAve*result).toFixed(2);


}

我希望他们将其存储到数据库中,但是当我单击“保存”时,只有分布,Q1,E2和T3有数据,而A4和Ave没有数据。我该怎么办?

最佳答案

对于文本输入,请使用“只读”而不是“禁用”。

<input type="text" name="A4" placeholder="A4" id="A4" readonly onchange="calc('Q1','E2','T3','distro','A4','Ave')">
<input type="text" name="Ave" placeholder="Ave" id="Ave" readonly onchange="calc('Q1','E2','T3','distro','A4','Ave')">

关于javascript - 使用onchange存储数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44015070/

10-09 23:59
查看更多