gpt4 book ai didi

forms - 如何让浏览器有选择地忽略表单上的 HTML5 必需属性

转载 作者:行者123 更新时间:2023-11-27 22:47:47 26 4
gpt4 key购买 nike

我有一个标准的 HTML 表单,它使用 fieldset 元素分成两部分。第一部分是输入姓名、电子邮件地址等,第二部分是输入地址自动完成功能的邮政编码(第二部分中的邮政编码查找字段没有必填属性)。

每个部分都有自己的提交按钮。第一部分中的每个字段都有一个带有 HTML5 必需属性的表单字段。

我的问题是,当用户在第一部分未输入任何内容的情况下将其邮政编码输入到邮政编码查找字段时,表单中的所有字段都会在不支持此属性的浏览器(例如 Firefox 3.6)中提交。在 Firefox 4(例如)中,它支持 required 属性并在存在具有 required 属性的空字段时阻止提交表单。但是,这破坏了我对表单的错误检查和验证的实现(服务器端,在 PHP 中)。

那么,有没有一种方法可以告诉浏览器(在这种情况下)在按下第二部分的提交按钮时忽略第一部分的“必需”属性?

我知道这可能违背了必填属性的要点,但我已经构建了表单,所以它不必按特定顺序完成,即用户可以选择在之前完成邮政编码查找字段输入他们的个人详细信息,但 required 属性目前强制用户以某种方式完成表单,而实际上并没有必要这样做。

此外,任何解决方案都必须能够在没有 JavaScript 的情况下工作。请不要提及任何提倡用 Ajax 替换邮政编码查找部分的答案,我已经决定这不是允许的选项。

最佳答案

我想我明白了你的问题。我不相信 HTML 中有任何东西可以让你指定这个更复杂的验证规则。我认为您必须:

  1. 在页面上将这些字段集拆分为两个单独的表单;

  2. 在两个不同的页面上使用两个单独的表单;或者

  3. 重新编写您的服务器端代码,以便在用户提交邮政编码时,非邮政编码表单字段仅包含 required 属性。

关于forms - 如何让浏览器有选择地忽略表单上的 HTML5 必需属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6056316/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com