我是菜鸟.
想做个小的专用计算程序.
从INput中取出的是字符串了,不是数字,没法计算.有哪位大侠能帮我?谢谢
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<style>
.td1 {
border: 1px solid #00CC66;
}
.td2 {
border: 1px solid #72EF6B;
font-family: "Times New Roman", Times, serif;
font-size: 12px;
}
</style>
<script language="javascript">
<!--
//判断输入的是不是数字
function onlyNum(str){
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)||(event.keyCode==110)||(event.keyCode==8)))
event.returnValue=false;
}
//
//进入计算公式
function js(){//确定各种要计算的变量
var gwzc=document.getElementById("gwzc"); //管网总长度
var sdyl=document.getElementById("sdyl"); //始端压力
var sdmd=document.getElementById("sdmd"); //始端密度
var gdcd=document.getElementById("gdcd"); //所要计算的管道长度
var mdyl=document.getElementById("mdyl"); //末端压力
var mdmd=document.getElementById("mdmd"); //末端密度
var zbcd=document.getElementById("zbcd"); //局部阻力当量长度
var dlbf=document.getElementById("dlbf"); //局部阻力当量百分比
alert(isNaN(parseFloat(gwzc.value)));//测试程序的数值传递
//avgbmz.innerHTML=gwzc.value//测试在表格内的输出//第一步:确定主干线的平均比摩阻
//平均比摩阻=(管网的始端和终端的蒸汽压力差Pa)/(主干线总长(m)*(1+局部阻力当量长度百分比))
//局部当量长度一般取0.5%
//alert("始端压力:"+sdyl.value+"管网总长:"+gwzc.value+"末端压力: "+mdyl.value+"局部当量百分比"+dlbf.value)//测试输出
var avg_bmz=(sdyl.value-mdyl.value)*1000000/(gwzc.value*(1+dlbf.value)); //计算平均比摩阻
avgbmz.innerHTML=avg_bmz.toFixed(2);
//第二步:按主干线上压力损失均匀分布来假定管段末端压力
//2010年4月3日
//该管段中的末端压力=该管段的始端压力-(管网始端与末端的压力差/总管网长度)*管段长度
var jdmdyl=sdyl.value-(sdyl.value-mdyl.value)/gwzc.value*gdcd.value
jd_mdyl.innerHTML=jdmdyl.toFixed(2)
//第三步:计算管段中的蒸汽的平均密度
//平均密度=(始端密度+末端密度)*0.5
//alert(isNaN(sdmd.value)+"\n"+mdmd.value)
var avg_md=(sdmd.value+mdmd.value)/2
//alert(avg_md)
avggdmd.innerHTML=avg_md//.toFixed(2)} -->
</script>
</head>
<body>
<table width="800" border="0" cellspacing="0" cellpadding="0" align="center" height="100px">
<tr>
<td> </td>
</tr>
</table>
<table width="800" border="0" cellspacing="0" cellpadding="0" align="center" height="500px">
<tr valign="top">
<td><form action="" name="frm1" id="frm1" method="get">
<table width="800" height="200" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">本管网总长度</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="gwzc" type="text" id="gwzc" size="10" onkeydown="onlyNum(this)" style="text-align:right" />
</td>
<td width="34" height="40" align="center" valign="middle" class="td2">m</td>
<td width="88" height="40" align="center" valign="middle" class="td2">始端压力</td>
<td width="110" height="40" align="center" valign="middle" class="td2"><input name="sdyl" type="text" id="sdyl" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="35" height="40" align="center" valign="middle" class="td2">Mpa</td>
<td width="88" height="40" align="center" valign="middle" class="td2"><p>始端密度</p></td>
<td width="88" height="40" align="center" valign="middle" class="td2"><input name="sdmd" type="text" id="sdmd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="94" height="40" align="center" valign="middle" class="td2"><p>kg/m<sup>3</sup></p></td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">所求管道长度</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="gdcd" type="text" id="gdcd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="34" height="40" align="center" valign="middle" class="td2">m</td>
<td width="88" height="40" align="center" valign="middle" class="td2">末端压力</td>
<td width="110" height="40" align="center" valign="middle" class="td2"><input name="mdyl" type="text" id="mdyl" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="35" height="40" align="center" valign="middle" class="td2">Mpa</td>
<td width="88" height="40" align="center" valign="middle" class="td2">末端密度</td>
<td width="88" height="40" align="center" valign="middle" class="td2"><input name="mdmd" type="text" id="mdmd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="94" height="40" align="center" valign="middle" class="td2">kb/m<sup>3</sup></td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">局部阻力当量长度</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="zbcd" type="text" id="zbcd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="34" height="40" align="center" valign="middle" class="td2">m</td>
<td width="88" height="40" align="center" valign="middle" class="td2">假定末端压力</td>
<td width="110" height="40" align="center" valign="middle" class="td2" id="jd_mdyl"> </td>
<td width="35" height="40" align="center" valign="middle" class="td2">Mpa</td>
<td width="88" height="40" align="center" valign="middle" class="td2">管段平均密度</td>
<td width="88" height="40" align="center" valign="middle" class="td2" id="avggdmd"> </td>
<td width="94" height="40" align="center" valign="middle" class="td2">kb/m<sup>3</sup></td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">局部阻力当量百分比</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="dlbf" type="dlbf" id="dlbf" size="10" onkeydown="onlyNum()" style="text-align:right" value="0.5" /></td>
<td width="34" height="40" align="center" valign="middle" class="td2">%</td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="110" height="40" align="center" valign="middle" class="td2"> </td>
<td width="35" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="94" height="40" align="center" valign="middle" class="td2"> </td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">主干线平均比摩阻</td>
<td width="120" height="40" align="center" valign="middle" class="td2" id="avgbmz"> </td>
<td width="34" height="40" align="center" valign="middle" class="td2">Pa/m</td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="110" height="40" align="center" valign="middle" class="td2"> </td>
<td width="35" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="94" height="40" align="center" valign="middle" class="td2"> </td>
</tr>
</table>
<table width="800" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><input type="button" value="计算" onclick="js()" /> <input type="reset" value="清除" /></td>
</tr>
</table> </form></td>
</tr>
</table>
<table width="800" border="0" cellspacing="0" cellpadding="0" align="center" height="100px">
<tr>
<td> </td>
</tr>
</table>
</body>
</html>
想做个小的专用计算程序.
从INput中取出的是字符串了,不是数字,没法计算.有哪位大侠能帮我?谢谢
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title></title>
<style>
.td1 {
border: 1px solid #00CC66;
}
.td2 {
border: 1px solid #72EF6B;
font-family: "Times New Roman", Times, serif;
font-size: 12px;
}
</style>
<script language="javascript">
<!--
//判断输入的是不是数字
function onlyNum(str){
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)||(event.keyCode==110)||(event.keyCode==8)))
event.returnValue=false;
}
//
//进入计算公式
function js(){//确定各种要计算的变量
var gwzc=document.getElementById("gwzc"); //管网总长度
var sdyl=document.getElementById("sdyl"); //始端压力
var sdmd=document.getElementById("sdmd"); //始端密度
var gdcd=document.getElementById("gdcd"); //所要计算的管道长度
var mdyl=document.getElementById("mdyl"); //末端压力
var mdmd=document.getElementById("mdmd"); //末端密度
var zbcd=document.getElementById("zbcd"); //局部阻力当量长度
var dlbf=document.getElementById("dlbf"); //局部阻力当量百分比
alert(isNaN(parseFloat(gwzc.value)));//测试程序的数值传递
//avgbmz.innerHTML=gwzc.value//测试在表格内的输出//第一步:确定主干线的平均比摩阻
//平均比摩阻=(管网的始端和终端的蒸汽压力差Pa)/(主干线总长(m)*(1+局部阻力当量长度百分比))
//局部当量长度一般取0.5%
//alert("始端压力:"+sdyl.value+"管网总长:"+gwzc.value+"末端压力: "+mdyl.value+"局部当量百分比"+dlbf.value)//测试输出
var avg_bmz=(sdyl.value-mdyl.value)*1000000/(gwzc.value*(1+dlbf.value)); //计算平均比摩阻
avgbmz.innerHTML=avg_bmz.toFixed(2);
//第二步:按主干线上压力损失均匀分布来假定管段末端压力
//2010年4月3日
//该管段中的末端压力=该管段的始端压力-(管网始端与末端的压力差/总管网长度)*管段长度
var jdmdyl=sdyl.value-(sdyl.value-mdyl.value)/gwzc.value*gdcd.value
jd_mdyl.innerHTML=jdmdyl.toFixed(2)
//第三步:计算管段中的蒸汽的平均密度
//平均密度=(始端密度+末端密度)*0.5
//alert(isNaN(sdmd.value)+"\n"+mdmd.value)
var avg_md=(sdmd.value+mdmd.value)/2
//alert(avg_md)
avggdmd.innerHTML=avg_md//.toFixed(2)} -->
</script>
</head>
<body>
<table width="800" border="0" cellspacing="0" cellpadding="0" align="center" height="100px">
<tr>
<td> </td>
</tr>
</table>
<table width="800" border="0" cellspacing="0" cellpadding="0" align="center" height="500px">
<tr valign="top">
<td><form action="" name="frm1" id="frm1" method="get">
<table width="800" height="200" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">本管网总长度</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="gwzc" type="text" id="gwzc" size="10" onkeydown="onlyNum(this)" style="text-align:right" />
</td>
<td width="34" height="40" align="center" valign="middle" class="td2">m</td>
<td width="88" height="40" align="center" valign="middle" class="td2">始端压力</td>
<td width="110" height="40" align="center" valign="middle" class="td2"><input name="sdyl" type="text" id="sdyl" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="35" height="40" align="center" valign="middle" class="td2">Mpa</td>
<td width="88" height="40" align="center" valign="middle" class="td2"><p>始端密度</p></td>
<td width="88" height="40" align="center" valign="middle" class="td2"><input name="sdmd" type="text" id="sdmd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="94" height="40" align="center" valign="middle" class="td2"><p>kg/m<sup>3</sup></p></td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">所求管道长度</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="gdcd" type="text" id="gdcd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="34" height="40" align="center" valign="middle" class="td2">m</td>
<td width="88" height="40" align="center" valign="middle" class="td2">末端压力</td>
<td width="110" height="40" align="center" valign="middle" class="td2"><input name="mdyl" type="text" id="mdyl" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="35" height="40" align="center" valign="middle" class="td2">Mpa</td>
<td width="88" height="40" align="center" valign="middle" class="td2">末端密度</td>
<td width="88" height="40" align="center" valign="middle" class="td2"><input name="mdmd" type="text" id="mdmd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="94" height="40" align="center" valign="middle" class="td2">kb/m<sup>3</sup></td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">局部阻力当量长度</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="zbcd" type="text" id="zbcd" size="10" onkeydown="onlyNum()" style="text-align:right" /></td>
<td width="34" height="40" align="center" valign="middle" class="td2">m</td>
<td width="88" height="40" align="center" valign="middle" class="td2">假定末端压力</td>
<td width="110" height="40" align="center" valign="middle" class="td2" id="jd_mdyl"> </td>
<td width="35" height="40" align="center" valign="middle" class="td2">Mpa</td>
<td width="88" height="40" align="center" valign="middle" class="td2">管段平均密度</td>
<td width="88" height="40" align="center" valign="middle" class="td2" id="avggdmd"> </td>
<td width="94" height="40" align="center" valign="middle" class="td2">kb/m<sup>3</sup></td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">局部阻力当量百分比</td>
<td width="120" height="40" align="center" valign="middle" class="td2"><input name="dlbf" type="dlbf" id="dlbf" size="10" onkeydown="onlyNum()" style="text-align:right" value="0.5" /></td>
<td width="34" height="40" align="center" valign="middle" class="td2">%</td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="110" height="40" align="center" valign="middle" class="td2"> </td>
<td width="35" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="94" height="40" align="center" valign="middle" class="td2"> </td>
</tr>
<tr>
<td width="120" height="40" align="center" valign="middle" class="td2">主干线平均比摩阻</td>
<td width="120" height="40" align="center" valign="middle" class="td2" id="avgbmz"> </td>
<td width="34" height="40" align="center" valign="middle" class="td2">Pa/m</td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="110" height="40" align="center" valign="middle" class="td2"> </td>
<td width="35" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="88" height="40" align="center" valign="middle" class="td2"> </td>
<td width="94" height="40" align="center" valign="middle" class="td2"> </td>
</tr>
</table>
<table width="800" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center"><input type="button" value="计算" onclick="js()" /> <input type="reset" value="清除" /></td>
</tr>
</table> </form></td>
</tr>
</table>
<table width="800" border="0" cellspacing="0" cellpadding="0" align="center" height="100px">
<tr>
<td> </td>
</tr>
</table>
</body>
</html>
解决方案 »
- hidden传递C#与JS变量
- 关于SyntaxError: unterminated string literal的问题
- js数组联级与显示问题
- jsp中如何查看大图片
- 点击提交表单时先刷新一次再提交数据,脚本要怎么写?
- javascript 调用OCX,方法中有一参数为对像
- 提问:两个菜鸟问题,哪位老大能帮我解决一下。100分送上。
- 我在一个自己的主页面做了两个帧,一帧放PopUp Menu,另一帧放PopUp Menu 联接的页面!可是PopUp Menu 因为只能在第一帧里显示,所以只能
- 如何动态修改标记的样式
- 大家学完基础知识点后的行为是个啥
- onchange函数如何添加struts formbean里面的参数
- Flex版WebIM(附源码)
<input onkeypress="return event.keyCode>=48&&event.keyCode<=57||event.keyCode==46" onpaste="return!clipboardData.getData('text').match(/\D/)" style="ime-mode:Disabled" ondragenter="return false">
if(/^[0-9]+$/i.test(str)){
alert("is a number");
}else{
alert("not a number");
}}
输入数字,显示not a number,不知要这样处理
onkeypress是按键按下的时候,此时文本框里还没有值,用onkeyup就可以了
我出的问题是在程序取出文本框中取出的数字是字符串,没加法加入数学算法.可能我的问题没有说清楚.
要怎么样,取出的字符串变成数字?用Number吗?
function onlyNum(str){
str = parseInt(str);//字符串转换为数字
//或者:
str = str-"0";//这样也可以把str转换为数字 if(/^[0-9]+$/i.test(str)){
alert("is a number");
}else{
alert("not a number");
}}
alert("is a number");
}else{
alert("not a number");
}
小数点没有办法输入了.
alert("is a number");
}else{
alert("not a number");
}这样最好...
下班啦!