我想将两个文本框中的值相乘(txtBox1应该包含一个Integer值,txtBox2应该包含一个Float值),然后将结果放在第三个文本框中。我的代码在下面,但是不起作用。 javascript函数被调用,否则将失败。有人可以帮我正确编码此代码吗:谢谢
//the javascript function
function CalculateTotal(id1, id2) {
var txt1 = document.getElementById(id1);
var txt2 = document.getElementById(id2);
var total = txt1 * txt2;
document.getElementById("txtTotal").value = parseFloat(total);
}
//c# code, programmatically adding attribute
txtBox1.Attributes.Add("onBlur", "CalculateTotal('txtBox1, txtBox2')");
最佳答案
你应该改变
var total = txt1 * txt2;
至
var total = txt1.value * txt2.value;
txt1
和txt2
是输入元素本身,而不是它们包含的值。在下一行,您可以自己使用
.value
来设置参数;)[编辑]
正如@Dan Dumitru所指出的,您可以使用parseFloat/parseInt,但是如果您的输入字段包含其他文本,小数点标记前的缺失数字,指数表示法等,则此功能将更为有用。
关于c# - 如何用JavaScript乘以文本框值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3528501/