簡體   English   中英

如果輸入不是 js 中的有效日期,如何連接/更改錯誤消息?

[英]How to concatenate/change the error message if the input is not a valid date in js?

我嘗試了將近兩天,但仍然沒有。 也許有人可以幫助精通 javascript 循環的人。

我之前問過這個問題並更改了一些代碼,但仍然沒有顯示預期數據。 並且還在為此而掙扎。

我有這個代碼:

$(function(){
var len = $('#groupContainer > div').length;
var data = [];
for(var i=0; i < len; i++){

    var number = $('#number_' + [i + 1]);
    var date = $('#date_' + [i + 1]);
    var count = i + 1;
    var message ="";
    var a = number.map(function(){
        return this.value;
    });
    var b = date.map(function(){
        return this.value;
    });

    var newObj = {number: a[0], date: b[0]}
    data.push(newObj);
}

var message = "";
for(var c = 0; c < data.length; c++)
{        
    haveErrorInGroup = false;
    for(var d in data[c])
    {
        if(data[c].hasOwnProperty(d))
        {      
            if(data[c][d] == "")
            {
                if(!haveErrorInGroup){
                    haveErrorInGroup= true;
                   message += 'Group: ' + [c + 1] + '\n';
                }

                message +=  d + ' is required!\n';
            }
            if(d == "date")
            {
                if(data[c][d].length != 22 && data[c][d] != "")
                {
                    message += 'Invalid Date!\n';
                }

            }

        }

    }


}
if(message){
    alert(message);
}

});

和預期的輸出:

如果第 1 組中的所有字段都已填寫且第 2 組未顯示警報框:

   Group 2:
   Number is required!
   Date is required!

如果未填寫所有字段,請顯示:

   Group 1, 2 Number is required!
   Group 1, 2 Date is required!

如果日期不是真正的日期:

  Group 1, 2 Date is invalid.

如果輸入之一無效。

  Group 2 Date is invalid.

如果所有字段都已填滿,則什么都不做。

這是我的小提琴

我認為您正在尋找類似jquery-validate 的東西。 我很確定它帶有一個本地日期驗證器,但如果你想要一個更具體的格式,你可以在其中放入一個正則表達式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM