0

キーアップイベントの入力で(正規表現からの)すべての不要な文字を置き換えるスクリプトを作成しようとしています。私はすべてを試しましたが、何もうまくいきません...

私のコード:

$('#form_accomodation_cell').on('keyup', 'input[name="accomodation_cell[]"]', function() {

    var value = $(this).val();
    var regex_cell = /^[0-9 \+]+$/g;

    if (!isNumeric(value, regex_cell))
    {
        var new_value = value.replace(regex_cell, '');
        alert(new_value);
    }

    function isNumeric(elem, regex_cell) {
        if(elem.match(regex_cell)){
            return true;
        }else{
            return false;
        }
    }

});
4

2 に答える 2

1

これを試して:

$('#form_accomodation_cell').on("keyup", function () {
    var value = $(this).val();
    var regex_cell = /[^[0-9 +]]*/gi;
    var new_value = value.replace(regex_cell, '');
    alert(new_value);
});

こちらで実際にご覧ください。

于 2013-08-08T09:00:29.033 に答える
1

イベントをキャッチして、最終的にこのように書くべきだと思います!

function validateNumber(evt) {
var theEvent = evt || window.event;
var key = theEvent.keyCode || theEvent.which;
key = String.fromCharCode( key );
var regex = /^[0-9 \+]+$/g;
    if( !regex.test(key) ) {
   theEvent.returnValue = false;
   if(theEvent.preventDefault) theEvent.preventDefault();
}
}
于 2013-08-08T09:00:41.817 に答える