页面中自动计算

waslee 2008-01-09 02:25:34
页面中又两个文本框 加法运算10+10=20
在textbox1中 输入10 textbox2中 输入10 textbox3自动 输出20
请问这个如何实现呢。
...全文
83 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
LikeCode 2008-01-09
  • 打赏
  • 举报
回复
另外,accMul方法是抄来的,网上有偶就不自己钻研了:)
西安风影 2008-01-09
  • 打赏
  • 举报
回复
不需要用服务器控件
input即可
采用onproperty 或者 onkeyup
LikeCode 2008-01-09
  • 打赏
  • 举报
回复
TO 3#
这是因为JS对浮点运算....的那个....唉,我也不知道怎么说,看了一篇文章,JAVA对浮点算运算很麻烦.
感谢vrhero 提供帮助.

代码改为这样

<!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 runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server" onkeyup="doEval()"></asp:TextBox>+<asp:TextBox ID="TextBox2"
runat="server" onkeyup="doEval()"></asp:TextBox>=<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>

</div>
</form>
<script type="text/javascript">
function doEval(){
var sTxt1=document.getElementById("<%=TextBox1.ClientID %>").value;
var sTxt2=document.getElementById("<%=TextBox2.ClientID %>").value;
if(sTxt1!=""&&sTxt2!=""){
var oTxt=document.getElementById("<%=TextBox3.ClientID %>");
oTxt.value=accMul(sTxt1,sTxt2);
}
}
function accMul(arg1,arg2)
{
var m=0,s1=arg1.toString(),s2=arg2.toString();
try{m+=s1.split(".")[1].length}catch(e){}
try{m+=s2.split(".")[1].length}catch(e){}
return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m)
}
</script>
</body>
</html>




----------------
QUOTE:竹子真牛B,,JS写得如此迅速,,连服务器都免了.
----------------
不敢当不敢当,竹子绝对是准菜鸟.
:)
lihongdian 2008-01-09
  • 打赏
  • 举报
回复
竹子真牛B,,JS写得如此迅速,,连服务器都免了.

再用ajax提交连刷新都免了
waslee 2008-01-09
  • 打赏
  • 举报
回复
乘法运算 oTxt.value=eval(sTxt1+"*"+sTxt2);

1.2*3=3.5999999999999996

楼上的用你的方法 出现以上结果
changjiangzhibin 2008-01-09
  • 打赏
  • 举报
回复
可写在第二个文本框的事件中,当然1楼的最好喽
LikeCode 2008-01-09
  • 打赏
  • 举报
回复
<!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 runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TextBox1" runat="server" onkeyup="doEval()"></asp:TextBox>+<asp:TextBox ID="TextBox2"
runat="server" onkeyup="doEval()"></asp:TextBox>=<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>

</div>
</form>
<script type="text/javascript">
function doEval(){
var sTxt1=document.getElementById("<%=TextBox1.ClientID %>").value;
var sTxt2=document.getElementById("<%=TextBox2.ClientID %>").value;
if(sTxt1!=""&&sTxt2!=""){
var oTxt=document.getElementById("<%=TextBox3.ClientID %>");
oTxt.value=eval(sTxt1+"+"+sTxt2);
}
}
</script>
</body>
</html>

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧