【问题标题】:Getting a non-selected radio buttons from request in servlet Java从servlet Java中的请求中获取未选择的单选按钮
【发布时间】:2011-03-31 05:08:03
【问题描述】:

这可能看起来很奇怪,但我需要为每个单选按钮组获取未选择单选按钮的值。我已经使用下面的代码来获取所有选定的按钮值,但我需要获取未选定的值。

        ArrayList <String> userSelection = new ArrayList <String>();
        Enumeration names = request.getParameterNames();
        String selection = "";
        while ( names.hasMoreElements() )
        {
           name = (String) names.nextElement();
           userSelection.add(request.getParameter( selection ));
        } 

【问题讨论】:

  • 您已经在服务器端代码中事先知道所有单选按钮。你怎么能显示所有单选按钮? :) 只需allradiobuttons - selectedradiobuttons = unselectedradiobuttons
  • :) 我知道,但是按钮名称存储在一个哈希集中,这些哈希集中存储在数组中(数组中的每个元素都是一组按钮),虽然我可以避免遍历数组。
  • 将值存储在List 中并使用List#retainAll()

标签: java servlets request radio-button


【解决方案1】:

浏览器不会向您发送未选中的按钮。您需要做的是:

  1. 让您的代码知道所有按钮的含义
  2. 创建一个包含所有可能值列表的隐藏字段。

如果您选择 #2,请注意 HEBERT 先生的建议,不要相信用户输入。

【讨论】:

    【解决方案2】:

    您根本无法从您的请求中获取这些值。

    由浏览器创建请求,它不会发送对导航无用的信息(例如未使用的值)。

    这样做的唯一方法是猜测值。

    请记住,此请求可能是手工伪造的,因此永远不要相信用户输入。

    【讨论】:

      猜你喜欢
      • 2014-12-26
      • 2019-08-14
      • 1970-01-01
      • 2014-03-14
      • 2013-09-28
      • 2019-10-01
      • 1970-01-01
      • 2018-06-03
      • 1970-01-01
      相关资源
      最近更新 更多