【问题标题】:How to Get an id in jsp instead of value?如何在jsp中获取id而不是值?
【发布时间】:2012-12-28 06:02:04
【问题描述】:

如何从jsp获取按钮id到servlet而不是获取按钮值

<input id="${section.id}" type="submit" name="submit" value="Edit">

如何在 servlet 中获取该 id?

【问题讨论】:

    标签: java html jsp servlets


    【解决方案1】:

    您不能该 id 仅供客户端使用。您需要设置 namevalue 以匹配元素的 id。

    或者,作为一种解决方法,您可以通过向您的 JSP 添加类似这样的内容来创建一个包含 id 值的隐藏输入字段:

    <input type="hidden" name="submit_id" value="${section.id}" />
    

    然后在submit_id 参数下提交表单时,这将在 servlet 中可用。

    String submitId = (String)request.getParameter("submit_id");
    

    【讨论】:

    • 这是我的代码 '' 如何获取该 id
    • 添加隐藏输入字段如我的答案所示,您可以从submit_id参数下的servlet中获取id
    【解决方案2】:

    您能够做到这一点的唯一方法是使用 javascript 拦截表单提交并将 id 设置为额外的 post/get 参数。

    【讨论】:

      【解决方案3】:

      唯一的方法是制作一个 javascript 函数来更改 id 的按钮值,但我不知道你为什么要这样做,你可以使用隐藏的输入来发送表单中的数据

      <input type="hidden" name="id" value="the_id_number" />
      

      【讨论】:

      • 这是我的代码 '' 如何获取该 id
      • 如果您使用 jquery,您可以执行类似 $("input[type=submit]").click(function(){ $(this).val($(this).attr(" ID”)); } ); ,但这会影响所有提交按钮,您可以在 jquery 上使用类名或 id 名,但同样,最好的解决方案是通过隐藏输入发送此信息
      【解决方案4】:

      您无法为 servlet 获取任何按钮 id 值。当提交来自浏览器的请求时,所有输入字段(输入标签)将被传输到服务器。可以使用该字段的名称访问每个输入属性的值。所有其他字段,如 id、class 等用于 css和 JavaScript 功能主义者。您不应该设计将按钮 id 传递给服务器端。考虑其他方法,例如隐藏输入字段

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-04-23
        • 2020-11-12
        • 2018-01-16
        • 2023-03-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多