比如我有这样两个下拉菜单 我想实现相加的效果 意思就是说比如我点击第一个下拉菜单的某个时 把值赋给文本框,然后我在点击第二个下拉菜单的某个时 同样也是把值赋给文本框 但是我想实现他们value值相加的效果 想请问下怎么实现
描述不好的话,请多多指教
比如我有这样两个下拉菜单 我想实现相加的效果 意思就是说比如我点击第一个下拉菜单的某个时 把值赋给文本框,然后我在点击第二个下拉菜单的某个时 同样也是把值赋给文本框 但是我想实现他们value值相加的效果 想请问下怎么实现
描述不好的话,请多多指教
(function(){
var $targetInput = $('input.target'),values = {};
function setVal(){ //循环读取values对象的所有属性,加起来,兼容以后增加select的情况。
var val = 0;
for(var k in values){
val += values[k];
}
$targetInput.val(val);
}
$('#Numbers1,#Numbers2').change(function(){ //select的值有改变的时候,把改变后的值全局保存到values对象里,key为select的name,以免之后重复叠加。
var $this = $(this),name = $this.attr('name');
values[name] = $this.val();
setVal();
});
}());
6 回答1.3k 阅读✓ 已解决
1 回答718 阅读
1 回答744 阅读
应该差不多就是这样,思路就是监听select的变化,取到selected的值,然后填充到文本框。
填充前,要先读取文本框里的数值,加上取到的值,就行了。
ps:取文本框值之前要先进行判断为空就让tt.val()等于0,selected的null,也做个判断,让null=0