【问题标题】:HTML Submit-button: Different value / button-text?HTML提交按钮:不同的值/按钮文本?
【发布时间】:2011-05-09 11:18:14
【问题描述】:

我想创建一个带有 'add tag' 的 HTML 表单提交按钮,但是,网页是瑞典语,所以我想要一个不同的 按钮文本

也就是说,我想要一个像这样的按钮

但我想让我的代码像

if (request.getParameter(cmd).equals("add tag"))
    tags.addTag( /*...*/ );

这可能吗?如果有,怎么做?

【问题讨论】:

  • 我认为值应该无关紧要。您只需检查 POST 数据中是否存在“add_tag”
  • 我将其读作“我希望输入的文本与我的服务器端处理不相关”,因此当您对表单进行多个翻译时,您不会获得多个文本值之一张贴。当您的表单有多个提交按钮并且您想要执行 if(request.getParameter("submit-type").equals("add-tag") ... 查看哪个提交按钮时,这很重要。

标签: html forms


【解决方案1】:

遵循 cmets 中的@greg0ire 建议:

<input type="submit" name="add_tag" value="Lägg till tag" />

在您的服务器端,您将执行以下操作:

if (request.getParameter("add_tag") != null)
    tags.addTag( /*...*/ );

(由于我不懂那种语言(java?),可能有语法错误。)

我更喜欢&lt;button&gt; 解决方案,但it doesn't work as expected on IE < 9

【讨论】:

    【解决方案2】:

    这里有很多答案可以解释您可以做什么(我使用不同的字段名称),但对您的问题的简单(并且尚未说明)答案是“不” - 您不能有不同的文本和值仅使用 HTML。

    【讨论】:

      【解决方案3】:

      如果您通过 JScript 处理“添加标签”:

      <form ...>
      <button onclick="...">any text you want</button>
      </form>
      

      如果通过页面重新加载处理,则以上

      【讨论】:

      • 是的,每个表单都需要 JS,不管它是否简单。欢迎使用 ASP.NET。
      • 作为 ASP.Net 开发人员,我可以确认这一点。 :P 假设您仍然生活在网络表单的时代。 ASP.Net MVC 要好得多。没有视图状态、全局包装表单等。
      【解决方案4】:

      可以使用button 元素。

      <button name="name" value="value" type="submit">Sök</button>
      

      来自W3C page on button:

      使用 BUTTON 元素创建的按钮功能类似于使用 INPUT 元素创建的按钮,但它们提供了更丰富的呈现可能性:BUTTON 元素可能具有内容。

      【讨论】:

      • 请注意,这不像 IE6/7 上宣传的那样工作。本文可能会解决问题,但如果您使用 asp.net 或其他不允许 HTML 回发的框架,则会遇到问题:allinthehead.com/retro/330/…
      • 你也可以只使用在 POST 中提供输出的 name 属性
      【解决方案5】:

      我不知道我是否正确,但据我了解,您可以使用带有“添加标签”值的附加隐藏字段,并让按钮具有所需的文本。

      【讨论】:

      • 对同一表单上的多个按钮没有帮助,我认为这是 OP 的问题。
      • 从他的问题中看不到任何证据表明同一表单上有多个按钮。
      猜你喜欢
      • 2012-06-16
      • 1970-01-01
      • 2014-09-17
      • 1970-01-01
      • 1970-01-01
      • 2019-03-29
      • 1970-01-01
      • 2017-05-20
      • 2011-02-19
      相关资源
      最近更新 更多