在页面卸载期间,Dojo/dijit表单字段被标记为无效
Dojo/dijit form field marked as invalid during page unload
我有一个使用Dojo的注册页面;带有客户端验证的Dijit表单,例如
<input style="width: 220px;" type="email" name="email" id="email" placeholder="your email address" required="true" maxLength="78" dojo-data-id="email" intermediateChanges="true" dojoType="dijit.form.ValidationTextBox" regexp="<?php echo EMAIL_REGEX;?>"></input>
这一切都工作得很好,除了如果用户点击了一个链接而没有触摸表单(即导航离开),输入字段,目前的焦点暂时变成"无效",即得到一个红色!"工具提示
。这不是灾难性的,但有点恼人-有什么办法防止它吗?我已经尝试添加一个onUnload事件,但这似乎触发字段被标记为无效后。
我相信这是由于您用required="true"
标记字段
如果您仍然希望这些字段是必需的,但不希望这个错误发生,我建议将它们设置为非必需,然后连接到您的dijit表单的onsubmit事件。在这里,我设置了所有必需的字段required=true,然后验证表单。如果表单包含无效字段,则阻止表单提交。
相关文章:
- 通过单击动态加载的表中同一行的另一个字段来更新一行的字段
- 添加和删除隐藏字段数组中的值,而不提交表单
- 单击鼠标,用MySQL数据填充html表单输入字段
- 带有条件字段的PHP表单
- 防止在输入字段上单击事件
- 高级自定义字段按单选按钮值排序
- 使用JQuery启用输入字段的单选框
- SmartyStreets:使用条件字段调整表单中已验证勾号的位置
- 组合功能以使用 Jquery 在一组单选按钮中显示输入字段和单选按钮
- 使只读字段不可单击
- 使用 JavaScript 进行 HTML 字段表单验证
- JavaScript 在不输入输入字段/表单的情况下传递输入
- JQuery 在动态添加输入字段时单击浏览,而 ajax 不起作用
- 我可以让时间选择器在输入字段中单击时触发吗?
- 将隐藏字段表单值传递给控制器
- 隐藏小视口中的字段,单击按钮再次显示
- 我可以给html文本字段表单中的元素提供相同的名称和id吗
- 在新行上显示输入字段(基于单选)
- 在文本字段(表单)后插入节点
- 动态生成的名称字段的单选按钮组验证