0
我有這個簡單的表單,我正在嘗試提交。它有3個輸入:文本字段,填充了來自計算的數據,具體取決於您輸入信息的哪個字段。我可以打入輸入,並且工作正常,因爲我仍然專注於該字段,但如果我輸入了表單點擊提交按鈕。這裏是html。提交表格仍然選擇輸入
<form id="pr">
<table width="680px" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td colspan="3" align="center" bgcolor="#CCCCCC" class="header">Pressure Conversion Calculator</td>
</tr>
<tr>
<td bgcolor="#efefef" class="text">Psi</td>
<td bgcolor="#efefef" class="text">MPa</td>
<td bgcolor="#efefef" class="text">Bar</td>
</tr>
<tr>
<td bgcolor="#efefef" class="text"><input id="psi" name="psi" type="text" size="7" value=""/></td>
<td bgcolor="#efefef" class="text"><input id="mpa" name="mpa" type="text" size="7" value="" /></td>
<td bgcolor="#efefef" class="text"><input id="bar" name="bar" type="text" size="7" value="" /></td>
</tr>
<tr>
<td colspan="3" bgcolor="#efefef"> </td>
</tr>
<tr>
<td colspan="3" bgcolor="#efefef">
<input type="submit" name="button" id="submit" value="Calculate" class="submitbutton"/>
<input type="button" name="clear" id="clear" value="Clear Fields" class="submitbutton"/>
</td>
</tr>
<tr>
<td colspan="3" bgcolor="#efefef" height="5"></td>
</tr>
</table>
,然後jQuery的
$('#submit').click(function(event){
event.preventDefault();
if($('#psi').is(':focus')){
pressure = parseInt($('#psi').val());
bar = pressure * 0.0690;
$('#bar').val(bar.toFixed());
mpa = pressure * 0.006894759086775369;
$('#mpa').val(mpa.toFixed());
}
else if($('#mpa').is(':focus')){
pressure = parseInt($('#mpa').val());
bar = pressure * 10;
$('#bar').val(bar.toFixed());
psi = pressure * 145.0377;
psi = Math.round(psi/1000)*1000;
$('#psi').val(psi);
}
else if($('#bar').is(':focus')){
pressure = parseInt($('#bar').val());
mpa = pressure * 0.1;
$('#mpa').val(mpa.toFixed());
psi = pressure * 14.500;
psi = Math.round(psi/1000)*1000;
$('#psi').val(psi);
}
else{}
});
我有點新的這個和我只是試圖找出所有的bug。任何幫助,將不勝感激。
'event.preventDefault()'防止其提交,因爲這是點擊提交按鈕的默認操作。只有在驗證確定不應提交時才應該這樣做。 – Barmar