将ajax请求传递给servlet

时间:2014-06-16 07:55:21

标签: javascript jquery ajax servlets

我有以下jquery函数。当我单击表格的一行时,我得到与隐藏行对应的每一行的第一个td

<td class="my_route" style="display: none">${route.id_route}</td>

然后将route.id_route正确传递给ajax,并将此值传递给servlet admin_show_reservations。已正确检索该值,因为它显示在警报中。我没有的是所要求的页面。为什么?可能没有正确制作ajax功能

JQUERY

$(".reserv_row").click(function() {
var href = $(this).find(".my_route").text();
alert("href is----"+href);
 $.ajax({
                cache:false,
                dataType:"html",
                data:"id="+href,
                type: "POST",
                url: "admin_show_reservations"

                });
});

HTML

<table class="show_reservations">
                    <tr>
                        <th>Compagnia</th>
                        <th>ID Veivolo</th>
                        <th>Partenza</th>
                        <th>Arrivo</th>
                        <th>Ora partenza (ora locale)</th>
                        <th>Ora arrivo (ora locale)</th>
                        <th>Classe</th>
                    </tr>
                    <c:forEach items="${routes_list}" var="route">
                        <tr class="reserv_row">
                            <td class="my_route" style="display: none">${route.id_route}</td>
                            <td>${route.airlane}</td>
                            <td>${route.aircraft_id}</td>
                            <td>${route.airport_city_source.city}</td>
                            <td>${route.airport_city_dest.city}</td>
                            <td><fmt:formatDate value="${route.departure_date}" pattern="dd/MM/yyyy hh:mm"/></td>
                            <td><fmt:formatDate value="${route.arrival_date}" pattern="dd/MM/yyyy hh:mm"/></td>
                            <td>${route.travel_class}</td>
                        </tr>
                    </c:forEach>
                </table>

2 个答案:

答案 0 :(得分:0)

&#34;数据&#34;在ajax中,成功将拥有从servlet返回的所有内容

注意:在您的情况下,响应类型应为html。

使用PrintWriter设置响应

response.setContentType("text/html");
    PrintWriter out = response.getWriter();

  out.write("<h1 class='yourclass'>" + "Hello world" + "</h1>");

  out.close();

答案 1 :(得分:0)

你必须写一个成功函数来对你得到的HTML做一些事情。

$.ajax({
    cache:false,
    // etc
    success: function (myHTML) {
        alert(myHTML);
    }
});