页面有三个文本框,前两个输入数字后,第三个框直接显示前两个文本框内数值相加后的结果,不需要通过control。这个能做吗?不能发图片,但愿大神们能看懂。。。别光说技术,求代码,实例也行啊。。。
,要用mvc实现。解决了,是这样写的:
<script>
var a = 0;
var b = 0;
var c = 0;
var result;
$(function () {
$("#InputFactor").blur(function () {
a = $("#InputFactor").val();
calc();
});
$("#DealFactor").blur(function () {
b = $("#DealFactor").val();
calc();
});
$("#OutputFactor").blur(function () {
c = $("#OutputFactor").val();
calc();
});
});
function calc() {
result = a * 0.58 + b * 1.66 + c*1.0;
$("#EstimateScale").val(result);
}
</script>,谢谢各位
<!DOCTYPE html> <html> <head> </head> <body> <input type="text" id="in1"> <input type="text" id="in2"> <input type="text" id="in3"> <hr /> <input type="text" readonly="readonly" id="in4"> <script> var in1 = document.getElementById('in1'), in2 = document.getElementById('in2'), in3 = document.getElementById('in3'), in4 = document.getElementById('in4'); var calcResult = function(){ var v1 = parseFloat(in1.value, 10), v2 = parseFloat(in2.value, 10), v3 = parseFloat(in3.value, 10); in4.value = (v1 || 0) * 0.58 + (v2 || 0) * 1.66 + (v3 || 0); }; in1.onkeyup = function(){ calcResult(); } in2.onkeyup = function(){ calcResult(); } in3.onkeyup = function(){ calcResult(); } </script> </body> </html>
大概就这样,细节自己处理。
运算符是固定的?直接注册3个框的change事件不就得了
嗯,固定,change 要写在view内还是model内?
@俺是新手: 这种东西写JS就可以了把?不用viewmodel的
@吴瑞祥: 貌似用fanction,我研究研究,谢谢你。
keyup效果会更好
能具体一点吗?基础不太好。
那就ajax
能做的,在文本框事件改变时去计算就行了.