javascript - Polymer1.0 验证两个输入[type=date]

标签 javascript forms polymer-1.0

我开始使用 Polymer 并且找不到很多问题的答案。

我有两个输入

<paper-input id="startDate" type="date" 
    error-message="The end date is before the start date"></paper-input>
<paper-input id="endDate" type="date"></paper-input>

当两者都为空或只有一个填写时,表单有效。如果两者都已填充,则需要验证 endDate 是否大于或等于 startDate。 怎么做?

最佳答案

如果您刚开始,请阅读开发人员指南,您可以在其中找到大部分问题的答案。

在您的情况下,您需要使用纸张输入的值声明属性并观察其变化。 https://www.polymer-project.org/1.0/docs/devguide/properties.html#change-callbacks .在该观察者中,您可以编写逻辑并将任何(或两个)字段设置为无效。

<dom-module id="my-form">
<template>
<paper-input id="startDate" type="date" value="{{startDate}}" error-message="The end date is before the start date"></paper-input>
<paper-input id="endDate" type="date" value="{{endDate}}"></paper-input>
</template>
<script>
(function() {
'use strict';

Polymer({
  is: 'my-form',

  properties: {
    startDate: Date,
    endDate: Date,
  },
  observers: ['_dateChange(startDate, endDate)'],
  _dateChange: function(startDate, endDate) {
     if(/*logic goes here*/) {
       this.$.startDate.invalid = true;
     } else {
       this.$.startDate.invalid = false;
     }
  }      
});
})();
</script>
</dom-module>

关于javascript - Polymer1.0 验证两个输入[type=date],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33259025/

相关文章:

javascript - React - 将函数作为 props 传递时,功能组件保持重新渲染

python - matplotlib 中是否存在文本/数字输入字段?

javascript - 使用 javascript 将表单字段的值传递给 Url

polymer - setTimeout 和 this.async 不一样?

polymer - 将 Angular 2 模型绑定(bind)到 polymer 下拉列表

javascript - Get 方法不适用于下载 URL

javascript - 如何设置从对 .js 或 json 文件的响应中收到的值

javascript - 如何返回 array.reduce 中的对象?

java - Spring MVC 3 : open ModelAndView in a new tab

firebase - 使用Polymer的firebase-collection推送新文档