我有这个我试图提交的简单表格。它有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{}
});
我对此并不熟悉,只是想弄清楚所有的错误。任何帮助将不胜感激。
答案 0 :(得分:1)
使用常规按钮(删除type="submit"
),然后在代码中提交表单:
document.forms[0].submit();