JS控制输入框只输入数字类型 <tr bgcolor="#FFFFFF" >
<td>报价金额</td>
<td><input type="text" name="PRICE" id="PRICE" class="text_8" style="width:120px;" onkeyup="clearNoNum(this)" /><span style="color:red;" mce_style="color:red;">币种:RMB(请填写数字类型)</span></td>
</trfunction clearNoNum(obj)
{
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
//限制金额小数点位数为两位
if (/^\d+\.?\d{0,2}$/.test(obj.value)) {
obj.value = obj.value;
} else {obj.value = obj.value.substring(0, obj.value.length - 1);}
}
<td>报价金额</td>
<td><input type="text" name="PRICE" id="PRICE" class="text_8" style="width:120px;" onkeyup="clearNoNum(this)" /><span style="color:red;" mce_style="color:red;">币种:RMB(请填写数字类型)</span></td>
</trfunction clearNoNum(obj)
{
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
//限制金额小数点位数为两位
if (/^\d+\.?\d{0,2}$/.test(obj.value)) {
obj.value = obj.value;
} else {obj.value = obj.value.substring(0, obj.value.length - 1);}
}
{
var fh='';
if(obj.value.indexOf('-')==0){
fh='-';
}
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");//限制金额小数点位数为两位
if (/^\d+\.?\d{0,2}$/.test(obj.value)) {
obj.value = obj.value;
} else {
obj.value = obj.value.substring(0, obj.value.indexOf(".")+3);
}
obj.value=fh+obj.value;
fh='';
}
function clearNoNum(obj)
{
//先把最前面的负号
var fh ='';
if(obj.value.indexOf('-') ==0){
fh ='-';
}
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
//限制金额小数点位数为两位
if (/^\d+\.?\d{0,2}$/.test(obj.value)) {
obj.value = obj.value;
} else {obj.value = obj.value.substring(0, obj.value.length - 1);}
obj.value =fh +obj.value;
//如果允许只输入负号:-,就设为空值。
//因为如果允许只输入符号:-,用户可能只输入负号,就不输入数字,就会报错。
//所以如果要输入负数,要先输入数字,最后在数字最前面加上负号。
if ((obj.value) =="-")
obj.value ="";
}