【问题标题】:Javascript: Validating if form entries are already submitted to proceedJavascript:验证表单条目是否已提交以继续
【发布时间】:2017-09-21 08:18:35
【问题描述】:

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

要解决这个问题:我正在做一个表格/矩阵,其中每个 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 和条件。

【问题讨论】:

  • 必填字段?

标签: javascript arrays forms object


【解决方案1】:

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

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!');

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-24
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-01
    相关资源
    最近更新 更多