Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在dart聚合物元素上使用HTML5验证?_Dart_Dart Polymer - Fatal编程技术网

如何在dart聚合物元素上使用HTML5验证?

如何在dart聚合物元素上使用HTML5验证?,dart,dart-polymer,Dart,Dart Polymer,我正在尝试创建自己的自定义聚合物元素,以强制执行指定的输入掩码。我创建了以下元素: 如您所见,my元素中的输入字段被标记为required属性。因此,当我将phone输入元素放入表单中时,我希望它能够强制执行此约束 测验 然而,当我这样做时,我可以随意发布表单,即使在我的领域中没有任何价值 确保字段为空时弹出错误消息的唯一方法是在我的phone input polymer元素中包含我的表单和按钮,如下所示: 测验 这是可行的,但我最初的目标是创建一个手机输入元素,它可以自己工作,并且

我正在尝试创建自己的自定义聚合物元素,以强制执行指定的输入掩码。我创建了以下元素:


如您所见,my元素中的输入字段被标记为required属性。因此,当我将phone输入元素放入表单中时,我希望它能够强制执行此约束


测验
然而,当我这样做时,我可以随意发布表单,即使在我的领域中没有任何价值

确保字段为空时弹出错误消息的唯一方法是在我的phone input polymer元素中包含我的表单和按钮,如下所示:


测验
这是可行的,但我最初的目标是创建一个手机输入元素,它可以自己工作,并且可以以任何形式包含进来


你知道我想做的是可能的吗?如果可能的话,我做错了什么?谢谢

只需将ID和onsubmit添加到表单标记,还可以将按钮声明为submit按钮:


测验
将存储格式处理程序添加到phone_input.dart:

saveform(事件e、变量详细信息、变量目标){
FormElement form=shadowRoot.query('#myform');
如果(!form.checkValidity()){
回来
}
//处理保存
}

单击按钮激活html5表单验证,但也调用保存表单处理程序

好吧,这是可行的,但这不是我想要做的。我希望我的按钮和电话字段不在同一个聚合物元素中,就像我的第二个代码片段一样。但这样看来,表单无法“钻入”我的手机输入聚合元素,并看到它包含一个带有HTML5验证标签的字段。当两者都在同一个聚合元素中,并且该元素包含表单时,html5验证工作正常,无需做任何特殊的操作。您好Gerald,您找到解决此问题的方法了吗。我现在也有同样的问题。你可以在上发布一个问题,以获得更好的聚合物元素表单支持,或者用你自己的代码进行处理,就像在这篇文章中一样。如果你对此有具体的问题,你可以问一个更具体的问题。上面来自ZOechi的URL上的代码与上面的主要问题没有区别,因此没有帮助。Dart对表单支持的这一方面是一个问题,可能需要优先解决。考虑到这个问题不是我提出的,我会犹豫是否发布一个问题,并希望这个人会这样做。