【问题标题】:How to submit form data to backend?如何将表单数据提交到后端?
【发布时间】:2020-06-01 15:57:06
【问题描述】:

免责声明:我是一名后端程序员,我想尽量减少我网页中的 javascript 代码。

我正在考虑使用here 给出的登录表单作为示例。在这个例子中,我们有这个

<form class="ui large form">
  <div class="ui stacked segment">
    <div class="field">
      <div class="ui left icon input">
        <i class="user icon"></i>
        <input type="text" name="email" placeholder="E-mail address">
      </div>
    </div>
    <div class="field">
      <div class="ui left icon input">
        <i class="lock icon"></i>
        <input type="password" name="password" placeholder="Password">
      </div>
     </div>
     <div class="ui fluid large teal submit button">Login</div>
  </div>
  <div class="ui error message"></div>
</form>

登录按钮只是一个不做任何事情的 div。表单标签中没有动作参数,也没有提交类型输入标签。

如何让页面将输入字段值发送回后端服务器?

请注意,源页面中有一些可见的 javascript 代码检查字段的有效性。但是没有提示如何将电子邮件和密码发送到后端并加载登录页面。

【问题讨论】:

  • 有什么东西可以阻止你操作 DOM 吗?
  • "登录按钮只是一个 div,什么都不做。表单标签中没有操作参数,也没有提交类型输入标签。"为什么不?这些是 HTML 表单的基础知识,听起来你是心甘情愿地公然蔑视它们。如果你想让事情正常工作,请根据the instructions 使用它们
  • @Quentin 我理解这个论点。我们可以补充一点,难读的占位符值不遵守可访问性规则。但在这种情况下,文本字段前面的图标给出了预期内容的视觉队列。如果图标是放大镜,则与 seach 字段相同。但是对于具有多个字段的更通用的形式,我绝对同意这个论点。
  • @chmike — 如果您想用图像标记表单控件,那很好。 &lt;label for="field_id"&gt;&lt;img src="mag.png" alt="Search"&gt;&lt;/label&gt;.

标签: javascript html forms user-interface frontend


【解决方案1】:

登录按钮只是一个 div,什么都不做

将其设为&lt;button&gt;

表单标签中没有动作参数

如果您希望将数据提交到 与当前页面不同的 URL,请添加一个。

您的表单也应该是method="POST"。密码不属于 URL(通常以纯文本形式记录)。

如何让页面将输入字段值发送回后端服务器?

使用&lt;button&gt; 元素而不是&lt;div&gt; 元素来表示您的提交按钮。 &lt;div&gt; 元素是当您需要一个块元素并且 HTML 缺少具有语义来描述您的内容的元素时。这不是这里的情况,你想提交一个表单,这就是提交按钮的用途。

【讨论】:

  • 这令人印象深刻。它只需添加动作参数和方法即可。无需将 div 更改为按钮。我不知道为什么。它使用 fomantic-ui 框架,并且有一个输入验证脚本。他们可能有一些与提交类相关的 JavaScript 魔法。按钮标签只是一个约定,还是需要它?没有这个按钮标签怎么办?
  • 我还有一个问题。在此示例中,只有一个按钮。如果我想要两个按钮怎么办。我怎么知道按下了哪个按钮。我们可以通过添加名称和值参数来使用提交输入类型来解决这个问题。但这不适用于这个 div。编辑:当我将标签更改为按钮时它可以工作。我可以添加名称和值参数,它们与表单值一起传递。
猜你喜欢
  • 2022-01-09
  • 1970-01-01
  • 2014-02-18
  • 2020-11-02
  • 2018-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多