【问题标题】:Getting a Input type="image" value from a request.getParameter()从 request.getParameter() 获取 Input type="image" 值
【发布时间】:2015-04-12 16:26:21
【问题描述】:

在我的 html 中,我将表单返回到我的 Servlet。我想获取输入类型 ="image" 的值,但我收到的是空值。

我的表格:

 <form action="HomeController" method="post">
   <button type="submit" name="s4" value="someValue">
     <img src="s4.jpg" alt="phonestuff">
   </button>
   <input type="hidden" name="s4price" value="800">  
 </form>

我的 Servlet 帖子:

double s4price = Double.parseDouble(request.getParameter("s4price"));
String s4 = request.getParameter("s4");
System.out.println(s4price);
System.out.println(s4);

我的输出:

800.0
null

预期输出:

800.0
Note4

【问题讨论】:

    标签: java html jsp servlets


    【解决方案1】:

    您提交按钮不会发送任何图像值。因为type="image" 定义了一张图片作为提交按钮

    试试这个:-

    <form action="HomeController" method="post">
     <button type="submit" name="s4" value="Note4">
        <img src="s4.jpg" alt="phonestuff">
     </button>
     <input type="hidden" name="s4price" value="800">  
    </form>
    

    或者:为了发送 s4 值,您可以使用图像提交按钮将其作为隐藏字段发送。

    <form action="HomeController" method="post">
      <input type="image" src="s4.jpg" alt="Submit" >
      <input type="hidden" name="s4" value="Note4"> 
      <input type="hidden" name="s4price" value="800">  
    </form>
    

    servlet 发布:-

    double s4price = Double.parseDouble(request.getParameter("s4price"));
    String s4 = request.getParameter("s4");
    System.out.println(s4price);
    System.out.println(s4);
    

    输出:

    800.0
    Note4
    

    【讨论】:

    • 如果它真的有效,那么您是否介意接受这个答案?欢迎:)
    【解决方案2】:

    当您提交表单时,Input type="image" 不会传递值。您需要以隐藏值传递它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-23
      • 2012-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多