使用onchange存储数据

时间:2017-05-17 03:32:40

标签: javascript html

  

如何在输入标签中使用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没有数据。我该怎么办?

2 个答案:

答案 0 :(得分:0)

对于文字输入,请使用&#39; readonly&#39;而不是&#39;禁用&#39;。

<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')">

答案 1 :(得分:0)

因为你禁用了它 删除已停用

或者如果要禁用它以显示 为表单提交添加另一个隐藏的输入。

<input type="hidden" name="Name" id="Name" />