-2

間違った時間形式を検証するための私のコードは次のとおりです。

 $('.allts').delegate(".tf", "focusout", function (e)
        {
                var curval = this.value;
                curval = curval.replace(';', ':');
                curval = curval.replace(" ", ':');
                curval = curval.replace('.', ':');                
                //alert(curval);
                if (/^\d$/.test(curval))
                {
                        curval = "0" + curval + ":00";
                }
                if (/^[0-9]:[0-5][0-9]$/.test(curval))
                        {
                                curval = "0" + curval;
                        }
                if (curval >= 10 && curval <= 12)
                {
                        curval = curval + ":00";
                }
                if(curval.length==2&&curval >= 0 && curval <= 12){
                curval = curval + ":00";
                }
                this.value = curval;
                if (this.value != "")
                {
                        if (!isValidDate(curval))
                        {
                                this.style.background = "#faa";
                                $('#msg_tformat').html('Please enter a valid time').show();
                                this.value = "";  
                        }

私の要件は、0:00 時刻形式を受け入れないことです。0:00 のような時刻形式を指定すると、「有効な時刻を入力してください」のようなエラー メッセージが表示されます。JavaScriptでこれを検証する適切な方法を誰かが提案できますか?

前もって感謝します。

4

1 に答える 1

0

isValidDate次のような関数に追加します。

if( curval === '0:00' || curval === '00:00' ) {
  return false;
}
于 2012-09-01T05:10:33.870 に答える