【问题标题】:How to format returned json response from servlet using jquery ajax如何使用jquery ajax格式化从servlet返回的json响应
【发布时间】:2015-05-05 20:58:26
【问题描述】:

我正在尝试显示从使用 jquery ajax 调用的 servlet 返回的用户列表。第一个脚本块运行良好,但无法传递文本和下拉列表值等表单参数,但以格式正确的列表显示从服务器返回的用户列表。

格式化响应但不能将表单参数传递给 servlet 的脚本。

$(document).ready(function() {
    $("form").submit(function(){
        alert("form submitted");
        $.get('SearchUserServlet', function(responseJson) {
            alert(responseJson);
            alert("inside the servlet");
            var $ul = $('<ul class="list-group">').appendTo($('.well'));
            $.each(responseJson, function(index, item) {
                $('<li class="list-group-item"><strong>').text(item).appendTo($ul);
            });
        });
    });
});

我尝试的第二个脚本将表单参数正确地传递给 servlet,但从 servlet 返回的响应没有像第一个脚本那样格式化。 下面是第二个脚本

var form = $('#SearchForm');

form.submit(function(){
    type: form.attr('method'),url: form.attr('action'),data: form.serialize(),
    success: function(responseJson) {
        alert(responseJson);
        alert("inside the servlet");
        var $ul = $('<ul class="list-group">').appendTo($('.well'));
        $.each(responseJson, function(index, item) {
            $('<li class="list-group-item"><strong>').text(item).appendTo($ul);
        });
    });
});

请帮我找出这两个脚本中的问题,以便我可以传递表单参数以及将响应格式化为正确的列表。 请审查和建议。

【问题讨论】:

  • 第一次调用,其中数据未传递到服务器,第二次调用将表单参数提交到服务器,但您能否提供第二次调用的输出/json,您将获得未格式化的响应。
  • @TechnoCrat ...你能不能简化一下..没有意义
  • 请提供 json 以便验证是否导致未格式化的异常。

标签: javascript jquery ajax forms servlets


【解决方案1】:

假设你的 json 字符串是 jsonString={...,..,..};

for(i=0; i<data.jsonString.length; i++) {
    //do your work here with which you are doing inside $.each  
} 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-17
    • 2016-11-13
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    • 2019-05-18
    相关资源
    最近更新 更多