0
<html>
<body>

    <form action="login.do" method="post">
        //.....

        <input type="submit" value ="send">
    </form>
</body>
</html>

在我的 servlet 中,我将处理请求并将 json 响应发回。如何从响应中获取 json 对象?

但是我们可以通过在单击按钮时调用一个函数来做到这一点。

function(){
    $ajax(
        url:"login.do"
        success: function(data){
        //..... 
        }
    )
}

有什么办法吗?还是只使用函数调用我们就可以做到?

4

2 回答 2

2

您可以将 设置dataTypejson,也可以使用捷径方法$.getJSON()

$.getJSON(your_url, function(data) {
  // data here is already an object.
  console.log(data);
});

编辑: getJSON将使用GET请求类型,对于POST,你可以这样做

$.post(your_url, function(data) {
  // data here is already an object.
  console.log(data);
}, 'json');
于 2012-06-28T05:07:38.213 回答
2

您调用的成功回调的第一个参数data是 json 对象,只要您包含dataType:'json'在 ajax 选项中或使用速记$.post(url[,data][,function(json){}),'json'])方法

阅读 $.ajax API 中的成功回调:

http://api.jquery.com/jQuery.ajax/

编辑:使用延迟方法

var ajaxCall= $.post( url, dataToServer,'json')


 $.when( ajaxCall).then(function(data){
     var json =data;
 })
于 2012-06-28T05:11:23.750 回答