js input输入框使用个人总结

时间:2022-08-23 09:58:49

1.限制input输入框输入的值为数字(可为小数)

onkeyup="value=value.replace(/[^\d\.]/g,'')" onblur="value=value.replace(/[^\d\.]/g,'')"

2.自动合并input框值

  <ul class="clearfix ulInput">
<li>
<em>交通事故责任强制险报价:</em>
<span><input type="text" onkeyup="value=value.replace(/[^\d\.]/g,'')" onblur="value=value.replace(/[^\d\.]/g,'');mergervalue(value,'ctal_insurance_price{$ex.id}','{$ex.id}');" value="" name="ctal_insurance_price{$ex.id}" id='ctal_insurance_price{$ex.id}' ></span>
</li>
<li>
<em>车身划痕险报价:</em>
<span><input type="text" onkeyup="value=value.replace(/[^\d\.]/g,'')" onblur="value=value.replace(/[^\d\.]/g,'');mergervalue(value,'bsr_insurance_price{$ex.id}','{$ex.id}');" name="bsr_insurance_price{$ex.id}" id='bsr_insurance_price{$ex.id}' ></span>
</li>
</ul>
<em>总报价:</em><input type="text" placeholder="请输入保险总报价" bx="{$ex.name}" name="i_quote{$ex.id}" id='i_quote{$ex.id}'>

上面input框限制只能输入数字或小数,当input失去焦点,会执行 mergervalue(value,name,id);

//mergervalue 合并值 
//value 当前input输入框值
//vname 当前input输入框标识名称
//id 分类id(有很多相同的input集合需要合并,可以用id来区分)
function mergervalue(value,vname,id){
var oquota = $('#'+vname).attr('quota');// 原值
var total = $('#i_quote'+id).val();// 总值

if(oquota == undefined || oquota == ''){
oquota = '0';
}
if(total == undefined || total == ''){
total = '0';
}
if(value == undefined || value == ''){
value = '0';
}
oquota = parseFloat(oquota);
total = parseFloat(total);
value = parseFloat(value);
totals = total + oquota + value;

$('#i_quote'+id).val(totals);// 记录总值
$('#'+vname).attr('quota',-value);// 记录原值的负数
}

mergervalue会计算所有input框的总值

js input输入框使用个人总结