0
$('.hourfield').focusout(function() {

    var h;
    var m;
    var timeStr = "";
    var time = "";
    var newFormat = "";

    timeStr = $(this).val();

    //Here I would like to remove all characters which isn't numbers
    timeStr = timeStr.replace("/[^0-9\.]+/g","");

    if(timeStr > 0) {

        h = timeStr.substr(0,2);
        m = timeStr.substr(2,2);

        newFormat = h+':'+m;

        //Add new values
        $(this).val(newFormat);
    }

});

ウェブサイトへのURL

4

2 に答える 2

3

正規表現を引用符で囲むことにより、置き換える文字列を指定しました。引用符を削除して正規表現を指定します。

timeStr = timeStr.replace(/[^0-9\.]+/g,"");
于 2013-03-19T14:40:04.423 に答える
0
$('.hourfield').focusout(function() {

    var h;
    var m;
    var timeStr = "";
    var CleanTimeStr = "";
    var newFormat = "";

    timeStr = $(this).val();

replace()ルールにいくつかの小さな変更を加え、主な目的である「ドット」を削除しました

    CleanTimeStr = timeStr.replace(/[.]+/g,"");

    if(CleanTimeStr > 0) {

        h = CleanTimeStr.substr(0,2);
        m = CleanTimeStr.substr(2,2);

        newFormat = h+':'+m;

        //Add new values
        $(this).val(newFormat);
    }
});

だから今はうまくいきます、ありがとう!

于 2013-03-20T07:39:49.450 に答える