Javascript:验证表单条目是否已提交以继续

时间:2017-04-24 15:06:45

标签: javascript arrays forms object

所以我正在处理这个问题:用户(工作ID和姓名)提交带有日期 positioID = secuence 的声明的表单。用户可能拥有超过1个sefence,并且声明已完成一个或多个日期。因此,用户可以申请6/7/2017,secuence = 22。用户也可以使用secuence = 9提交相同日期(6/7/2017)的索赔。用户甚至可以提交2个不同的日期,具有不同的secuences。 需要验证用户是否已提交日期和保证的索赔。因此,索赔不会重复,如果已经声明,则会触发警报。

要解决这个问题:我正在做一个表/矩阵,其中每个secuence都分配给已经提交的日期。目标是获得每个指定的secuence的许多日期对象。所以下一个条目进行比较。

所以第一步:

claimList.get({workID:$ rootScope.workID},function(response){           listByDate = [];

        var validateList = response.body;
        validateList.forEach(function(response){          
          listByDate.push({
            key1: 'date',
            key2: 'Secuence',
            value1: response.date,
            value2: response.secuence
          });

}

建立这个矩阵非常困难

下一步将是一个foreach和有条件的。

1 个答案:

答案 0 :(得分:0)

我将假设您尝试存储的数据位于对象内:

data = { date: x, sequence: y }

您已存储的数据位于名为dataList;

的数组中

您应该只检查dataList这些值,如果找不到它们就意味着您安全,您可以继续发布不同的唯一条目。

您应该编写类似以下内容的代码

var occupiedSlot = dataList.find(
   function(elementOfDataList) {
      return elementOfDataList.date === data.date
   }
);
if(occupiedSlot) alert('You've already published an entry for this date!');

如果您需要发布更多条目,可以在函数内为您需要检查的每个条目重复此脚本。