如何进行两个textbox输入值的计算

mpmxs 2008-10-13 10:46:30
我的表单上有三个asp:textbox控件,现想在textbox1和textbox2中输入数值后两值相乘,把值显示在textbox3中,应该怎么写代码?
...全文
699 25 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
三碗猪脚 2008-10-13
  • 打赏
  • 举报
回复

function sum()
{
//其实还得用正则表达式检查数据合法性,自己写吧。。。。
document.all.textbox3.value=document.all.textbox1*1+doucument.all.textbox2.value*1
//或者
document.getElementById("textbox3").innerText= document.getElementById("textbox1").value*1+
document.getElementById("textbox2").value*1;
楼上说的都用服务器端控件,要回传到服务器,多不爽。。。

用JS操作就可以了,在后台对于控件增加一个客户端方法。。。

this.button1.Attribute.Add("onclick","sum()");
cong1212 2008-10-13
  • 打赏
  • 举报
回复
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
TextBox3.Text =Convert.ToString(Convert.ToDouble(TextBox2.Text) + Convert.ToDouble(TextBox1.Text));
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
TextBox3.Text = Convert.ToString(Convert.ToDouble(TextBox2.Text) + Convert.ToDouble(TextBox1.Text));
}



<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>

</div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:TextBox ID="TextBox2" runat="server" AutoPostBack="True" OnTextChanged="TextBox2_TextChanged"
Width="41px">0</asp:TextBox>
+<asp:TextBox ID="TextBox1" runat="server" AutoPostBack="True" OnTextChanged="TextBox1_TextChanged"
Width="42px">0</asp:TextBox>=<asp:TextBox ID="TextBox3" runat="server" Width="47px">0</asp:TextBox>
</ContentTemplate>
</asp:UpdatePanel>
</form>
</body>
cong1212 2008-10-13
  • 打赏
  • 举报
回复
应用AjAX吧,做这个是最好的
maybe723 2008-10-13
  • 打赏
  • 举报
回复
还是用js比较好!
CS_9413 2008-10-13
  • 打赏
  • 举报
回复
double a, b;
double.TryParse(this.TextBox1.Text,out a);
double.TryParse(this.TextBox2.Text,out b);
this.TextBox3.Text=""+a*b;
wdf618 2008-10-13
  • 打赏
  • 举报
回复
更正一下
this.TextBox3.Text = (double.Prase(this.TextBox1.Text)*double.Prase(this.TextBox2.Text)).ToString("0.00")
wdf618 2008-10-13
  • 打赏
  • 举报
回复
这下又来两个转化为double的了!好好好!那人家TextBox3里面要显示几位小数?!!
所以这样才是最正确的
this.TextBox3.Text = (double.Prase(this.TextBox1.Text)*double.Prase(this.TextBox2.Text)).ToString(0.00)

一帮人啊...好好提高基本编程素质!
wdf618 2008-10-13
  • 打赏
  • 举报
回复
还有为啥人家说两数相乘就一定是两个整数?!!!!
写程序的思维要严密阿,这里肯定是要转化为浮点的阿!
string -〉浮点 - 〉string ->赋值
赤色火焰 2008-10-13
  • 打赏
  • 举报
回复
double num1=double.Parse(this.TextBox1.Text);
double num2=double.Parse(this.TextBox2.Text);
double num3=num1*num2;
this.TextBox3.Text=num3.ToString();
daqiaonanlu2000 2008-10-13
  • 打赏
  • 举报
回复
float a = float.Parse(TextBox1.Text) * float.Parse(TextBox2.Text);
TextBox3.Text = a.ToString();
wdf618 2008-10-13
  • 打赏
  • 举报
回复
现在人都怎么回事啊,那个js代码的除外,一对人把非string类型往TextBox的Text属性里面直接赋值,你们去看看去,这样绝对是报错的!
wdf618 2008-10-13
  • 打赏
  • 举报
回复
7楼的表copy我的....
xujuan_0509 2008-10-13
  • 打赏
  • 举报
回复
this.TextBox3.Text = (double.Prase(this.TextBox1.Text)*double.Prase(this.TextBox2.Text)).ToString()
why2002plus 2008-10-13
  • 打赏
  • 举报
回复
Sub TextBox1_TextChanged
Sub TextBox2_TextChanged
先判断下textbox1和textbox2输入值是否正确,正确则
textbox3.text=CDbl(TextBox2.text)*CDbl(TextBox1.text)

wdf618 2008-10-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 cooolchen 的回复:]
this.TextBox3.Text = (int)this.TextBox1.Text*(int)this.TextBox2.Text
[/Quote]
错得离谱!

this.TextBox3.Text = (double.Prase(this.TextBox1.Text)*double.Prase(this.TextBox2.Text)).ToString()
这个才是对的
magicbacon 2008-10-13
  • 打赏
  • 举报
回复
code=HTML]<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

Protected Sub btnCal_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Me.txt3.Text = Integer.Parse(Me.txt1.Text.Trim) * Integer.Parse(Me.txt2.Text.Trim)
End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="txt1" runat="server"></asp:TextBox>×
<asp:TextBox ID="txt2" runat="server"></asp:TextBox>=
<asp:TextBox ID="txt3" runat="server"></asp:TextBox>
<asp:Button ID="btnCal" runat="server" OnClick="btnCal_Click" />
</div>
</form>
</body>
</html>[[/code]
keith0220 2008-10-13
  • 打赏
  • 举报
回复
protected void Button3_Click(object sender, EventArgs e)
{
int a=convert.toint16(this.textbox1.text);
int b=convert.toint16(this.textbox2.text);
int c=a+b;
this.textbox3.text=c.tostring();
}
davidtsui 2008-10-13
  • 打赏
  • 举报
回复

textbox3.text = Convert.ToInt64(textbox1.text) * Convert.ToInt64(textbox2.text);

cooolchen 2008-10-13
  • 打赏
  • 举报
回复
this.TextBox3.Text = (int)this.TextBox1.Text*(int)this.TextBox2.Text
why2002plus 2008-10-13
  • 打赏
  • 举报
回复
计算前判断一下输入是否正确
或者 用正则表达式限制输入
加载更多回复(5)

62,247

社区成员

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

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

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

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