错误HTTP / 1.1 400错误请求 - 当我尝试通过ajax调用向服务器发送包含多个项目的列表框时

时间:2014-03-11 12:24:14

标签: jquery ajax listbox

我的JSp页面有以下HTML来生成ListBox:

<form name="form_lista_horario">
            <select name="eventos">
                <c:forEach var="evento" items="${lista_eventos}">
                  <option value=${evento.id} onclick=""> ${evento.nome} - ${evento.descricao} </option>
                </c:forEach>
            </select>

            <table id="hor-zebra" border = 2>
            <tr>
                <td>
                    <select name="usuarios" id="usuarios" size="5" width="200px" multiple="multiple">
                        <c:forEach var="usuario" items="${lista_usuarios}">
                            <option value="${usuario.id}">${usuario.nome}</option>
                        </c:forEach>
                    </select>
                </td>

            <td>
                <p> <button type="button" class="btn btn-lg btn-default" id="for_left"> << </button> </p>
                <p> <button type="button" class="btn btn-lg btn-default" id="for_right"> >> </button> </p>
            </td>

                <td>
                    <select name="selecao" id="selecao" size="5" width="200px" multiple="multiple">
                    </select>
                </td>
            </tr>
            </table>

            <button type="button" class="btn btn-lg btn-default" id="btn_enviar">OK</button>
        </form>

我希望发送由id&#34; selecao&#34;标识的ListBox的内容。到服务器。我写了这个Jquery代码:

$("#btn_enviar").click(function(){
        $.ajax({
            url: "lista_horario.html",
            data: { id_evento: $('#evento option:selected').val(), id_usuarios: $('#selecao option:selected').val()  },
            cache: false
        }).done(function(data) {
            $("#result").show();
            $("#result").empty().append( data );
            $("#result").hide(3000);
        });
    });

问题是:当我在浏览器中打开此页面并单击按钮时,浏览器的控制台会显示以下错误消息:

GET http://localhost:8080/HorarioLivre/lista_horario.html [HTTP/1.1 400 Bad Request 11 ms]

请求由我的Controller中的跟随方法处理:

@RequestMapping(value="/lista_horario", method=RequestMethod.GET)
@ResponseBody
public String lista_horario(@RequestParam("id_evento") String id_evento, @RequestParam("id_usuarios") String[] id_usuarios)

我做错了什么?

0 个答案:

没有答案