0

我正在尝试从发布的表单数据中获取复选框的值。我已经让表单工作了,因为我可以很容易地获取文件的值(我在下面的代码中省略了文件表单字段),但复选框不会返回 null 以外的任何内容。我究竟做错了什么?

小服务程序:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    String str = request.getParameter("isTransform");

    System.out.println("parameter: " + str);
}

html客户端:

<form enctype="multipart/form-data" id="compareForm1" >
    <input type="checkbox" value="true" name="isTransform" id="isTransform1" >
</form>

我有 jquery.form.js 发送实际的帖子

var options = {
                url:          "http://localhost:8080/TestingTomcat/someClassName",
                type:         "POST",
                success:      function (html){
                    $("#placeholder").html(html);
                    change_active("comparison_page");
                }
        };

        $("#compareForm1").submit(function () {
            $(this).ajaxSubmit(options);

            return false;
        });

实际发布数据:

POSTDATA =-----------------------------153501500631101
Content-Disposition: form-data; name="isTransform"

true
-----------------------------153501500631101
Content-Disposition: form-data; name="isTransform"

true
-----------------------------153501500631101--

单击或未单击按钮得到的结果是:

parameter: null
4

1 回答 1

3

无法从 getParameter 方法获取来自“multipart/form-data”表单的参数。您应该使用 3rd-party 库来处理多部分数据,以便自己解析 req.getInputStream() 的内容。我认为Apache Commons fileUpload会帮助你。

于 2012-07-10T20:56:00.923 回答