为什么我的输入接受所有值,即使我正在使用函数来防止这种情况?

时间:2015-01-22 10:07:30

标签: javascript html regex

我的网站上有这个文本框,您可以在其中放入一定数量的欧元。所以在这个文本框中,它应该只能用数字和逗号来表示(没有数字)。

代码:

<script>
    $('#goed_doel_bedrag').keyup(function (e) {
        commaOnly($(this),'float');
    });
    function commaOnly(input,format){
        var value = input.val();
        var values = value.split("");
        var update = "";
        var transition = "";
        var expression=/(^\d+$)|(^\d+\.\d+$)|[,\.]/;
        var finalExpression=/^([1-9][0-9]*[,\.]?\d{0,3})$/;
        for(id in values){
            if (expression.test(values[id])==true && values[id]!=''){
                transition+=''+values[id].replace('.',',');
                if(finalExpression.test(transition)==true)
                {
                    update+=''+values[id].replace('.',',');
                }
            }
        }
        input.val(update);
    }
</script>
<div id="simplr-form">
    <br/>
    <? echo $goed_doel?>
    <br><br>
    Bedrag: <input type="text" step="any" min="0" name="goed_doel_bedrag" id="goed_doel_bedrag" placeholder="Vul hier het bedrag in">
    <br/>

1 个答案:

答案 0 :(得分:1)

缺少$(document).ready(function(){});

$(document).ready(function(){ 
    $('#goed_doel_bedrag').keyup(function (e) {
    commaOnly($(this),'float');
    });
});