js校验输入框中只能输入两位小数的有效数值和根据特定字符查找所在位置
发布日期:2021-10-05 13:14:49 浏览次数:2 分类:技术文章

本文共 1545 字,大约阅读时间需要 5 分钟。

最近在开发外汇结汇需求中需要对输入的金额数字进行控制校验,现总结如下:

首先把根据特定字符查找所在位置的方法贴出来,这个在数值校验中需要用到。

//根据特定字符查找所在位置

function find_str(str,f_str,n){
var arr_str;
var tmp_str=0;
var arr_str=str.split(f_str);
if(arr_str.length<n){n=arr_str.length}
for(i=0;i<n;i++){
  tmp_str=arr_str[i].length+tmp_str;
}
return tmp_str+i-1;
}

//校验金额

function input_checkAmount() {
if ((input_amt.value).indexOf(".") > 0) {
var str = (input_amt.value).substr(find_str((input_amt.value), ".", 1) + 1, (input_amt.value).length);
if (str.indexOf(".") > 0) {
error_TXTFXJH.innerHTML = “请输入正确的金额”;
input_amt.value = "";
input_amt.focus();
} else {
if (str.length == 0) {
}else if (str.length >2)
{
error_TXTFXJH.innerHTML = "金额只支持两位小数";
input_amt.value = input_amt.value.substr(0,input_amt.value.length-1);
input_amt.focus();
}else if(!new top.StringCtrl(input_amt.value).isValidAmount()) {
error_TXTFXJH.innerHTML = top.langcur.oPlsInputRightAmt;
input_amt.value = "";
input_amt.focus();
}
}
}
 if((input_amt.value).indexOf("00") ==0){
error_TXTFXJH.innerHTML =“请输入正确的金额”;
input_amt.value = "";
input_amt.focus();
}else {
if (!new top.StringCtrl(input_amt.value).isValidAmount()) {
error_TXTFXJH.innerHTML = “请输入正确的金额”;
input_amt.value = "";
input_amt.focus();
}
}

html代码:

<tr>

<td align="right" class="Tip_Content"><span id="oFxTerminateAmt"></span>:&nbsp;&nbsp;</td>
<td align="left"><input type="text" class="input_short3" name="input_amt" id="input_amt" maxlength="12" οnclick="javascript:ShowKeyboard();" οnkeyup="return input_checkAmount()"/></td>
</tr>

具体的页面还请以具体项目为准。大体的代码就是这样了,方法和方向都是这样。谢谢参阅。

转载地址:https://blog.csdn.net/LM891108647/article/details/79025784 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:JS中select框中控制下拉列表部分可选部分不可选
下一篇:使用JS截取小数点后指定的位数

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月11日 17时37分55秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章