【问题标题】:JSP Servlet getParameter giving null [duplicate]JSP Servlet getParameter给出null [重复]
【发布时间】:2018-10-27 11:57:12
【问题描述】:

在 servlet 中,我尝试使用以下表单获取提交按钮的值

JSP 和 Servlet 是不同的 webmodule

Servlet 代码:

public static String getValue(String value) {
  return (value != null) ? value.trim() : "";
}

String article_title = 
Utilities.getValue(request.getParameter("txtArticleTitle"));
byte article_image_count  = Utilities.getByteParam(request,"txtFileCount");
out.print("Title is: " + article_title+" ----- ");
out.print("File Count is: " + article_image_count);

JSP 表单:

<form action="" method="" enctype="multipart/form-data">
<textarea name="txtArticleTitle" rows="3" value="" placeholder=""></textarea>
<input id="filePost" type="file" hidden="true" onchange="setImagePost()">
<button type="button" class="btn btn-sm btn-default pull-right" onclick="submitArticleAE(this.form);"></button>
</form>

JS 代码

function submitArticleAE(fn){
//to check input form
    alert("Title is: "+fn.txtArticleTitle.value+" ---- File Count is: "+fn.txtFileCount.value);
    if(checkArticleAE(fn)) submitForm(fn,"POST","/adv/article/upload");
}

https://i.stack.imgur.com/BYjOJ.png

【问题讨论】:

  • 为什么表单的action是空的?如果您希望针对 servlet 提交表单,则需要将 servlet 的 url 定义为 action。还要注意表单的方法,并在您要上传文件时将其设置为“发布”。
  • 我在 javascript 中检查了有效的表单,如果是真的我会提交
  • 感谢您提供更多代码。给我们一点时间。

标签: java jsp servlets


【解决方案1】:

在使用 enctype="multipart/form-data" 时,您不能通过 request.getParameter(name); 直接获取参数。在使用它时,表单字段不能作为请求的参数,它们包含在流中,因此您无法以正常方式获取它。您可以在使用文档中找到一种方法 http://commons.apache.org/proper/commons-fileupload//using.html, 在处理上传的项目部分下。

来源:

Sending additional data with multipart

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-10
    • 2017-02-07
    • 2021-06-04
    • 1970-01-01
    • 2013-11-14
    • 1970-01-01
    • 2018-05-16
    • 2011-07-24
    相关资源
    最近更新 更多