客户端即时计算控件的值
<%@ Page Language="C#"%>
<!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>Js计算题</title>
</head>
<body>
<form id="form1" runat="server">
<div>
A:<asp:TextBox ID="textBoxA" runat="server" Columns="5" />
B:<asp:TextBox ID="textBoxB" runat="server" Columns="5" />
C:<asp:TextBox ID="textBoxC" runat="server" Columns="5" />
Result:<asp:TextBox ID="textBoxD" runat="server" Columns="5" />
</div>
</form>
</body>
</html>
<script runat="server">
protected override void OnLoad(EventArgs e)
{
string calcExpression = "calc(['" + textBoxA.ClientID + "','" + textBoxB.ClientID + "','" + textBoxC.ClientID + "','" + textBoxD.ClientID + "'])";
textBoxA.Attributes.Add("onkeyup", calcExpression);
textBoxB.Attributes.Add("onkeyup", calcExpression);
textBoxC.Attributes.Add("onkeyup", calcExpression);
base.OnLoad(e);
}
</script>
<script language="javascript">
String.prototype.trim = function(){ var r = /^\s+|\s+$/g;return this.replace(r,'');};
String.prototype.isNumber = function(){var reg = /^[\d]*[.]?\d*$/; var t = this; return reg.test(t);};
function $id(id){return document.getElementById(id);}
function calc(otxtArray){
if(otxtArray && otxtArray.length && otxtArray.length > 2){
var result = 1;
for(var i=0;i<otxtArray.length-1;i++){
var otxt = $id(otxtArray[i]);
var iValue =otxt.value.trim();
//如果是空值,则退出函数不进行计算
if(!iValue){
return;
}
if(!iValue.isNumber()){
//此处是否提示根据需要定
alert('请输入数字');
return;
}
iValue = parseFloat(iValue);
//如果为0不进行计算
if(iValue <= 0){
//此处是否提示根据需要定
alert('请输入大于0的数字');
return;
}
result = result * iValue;
}
var oresult = $id(otxtArray[otxtArray.length-1]);
oresult.value = result;
}
}
</script>
<!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>Js计算题</title>
</head>
<body>
<form id="form1" runat="server">
<div>
A:<asp:TextBox ID="textBoxA" runat="server" Columns="5" />
B:<asp:TextBox ID="textBoxB" runat="server" Columns="5" />
C:<asp:TextBox ID="textBoxC" runat="server" Columns="5" />
Result:<asp:TextBox ID="textBoxD" runat="server" Columns="5" />
</div>
</form>
</body>
</html>
<script runat="server">
protected override void OnLoad(EventArgs e)
{
string calcExpression = "calc(['" + textBoxA.ClientID + "','" + textBoxB.ClientID + "','" + textBoxC.ClientID + "','" + textBoxD.ClientID + "'])";
textBoxA.Attributes.Add("onkeyup", calcExpression);
textBoxB.Attributes.Add("onkeyup", calcExpression);
textBoxC.Attributes.Add("onkeyup", calcExpression);
base.OnLoad(e);
}
</script>
<script language="javascript">
String.prototype.trim = function(){ var r = /^\s+|\s+$/g;return this.replace(r,'');};
String.prototype.isNumber = function(){var reg = /^[\d]*[.]?\d*$/; var t = this; return reg.test(t);};
function $id(id){return document.getElementById(id);}
function calc(otxtArray){
if(otxtArray && otxtArray.length && otxtArray.length > 2){
var result = 1;
for(var i=0;i<otxtArray.length-1;i++){
var otxt = $id(otxtArray[i]);
var iValue =otxt.value.trim();
//如果是空值,则退出函数不进行计算
if(!iValue){
return;
}
if(!iValue.isNumber()){
//此处是否提示根据需要定
alert('请输入数字');
return;
}
iValue = parseFloat(iValue);
//如果为0不进行计算
if(iValue <= 0){
//此处是否提示根据需要定
alert('请输入大于0的数字');
return;
}
result = result * iValue;
}
var oresult = $id(otxtArray[otxtArray.length-1]);
oresult.value = result;
}
}
</script>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架