如何使用jquery-ajax格式化servlet返回的json响应

How to format returned json response from servlet using jquery ajax

本文关键字:json 响应 返回 servlet 何使用 jquery-ajax 格式化      更新时间:2023-09-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字符串为jsonString={…,..,..},请尝试此操作;

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