【问题标题】:AJAX error [object,Object]AJAX 错误 [对象,对象]
【发布时间】:2013-09-18 21:03:02
【问题描述】:

这是java代码;

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

      Map<String,Object> hsssmap= new HashMap<String,Object>();
      hsssmap.put("a","true");
      hsssmap.put("b","true");
      write(response,hsssmap);

}
private void write(HttpServletResponse response, Map<String,Object> hsssmap) throws IOException {
         response.setContentType("application/json");       
         response.setCharacterEncoding("UTF-8");
         Gson gson = new Gson();
         String json = gson.toJson(hsssmap);
         response.getWriter().write(json);

}   

这里是js代码;

$(document).ready(function(){   
 $.ajax({
url: 'uri',
    type: 'POST',
dataType: 'json',
data: data,

success: function(data){
     $.each (data, function (key,value) {

        alert(key+" "+value);
     });
 },
 error: function (e) {
     alert("error : " + e);
     }

});

return false;
});

成功事件不起作用。如何解决?

【问题讨论】:

  • 你的java代码被执行了吗?您是否更改了响应类型?如果您在$.ajax 方法中遇到错误,即如果错误函数被命中,错误消息是什么?
  • 我对java一无所知,但是当服务器响应不是200 OK时成功功能不起作用
  • 'uri' 不是有效资源...您需要为 url 参数指定有效资源。
  • java 代码运行正常。在写函数的最后,System.out.println(json)= {"id":"true","password":"true"}
  • 成功事件不起作用是什么意思?它有什么作用?尝试将错误函数更改为 alert("error:" + e.responseText);

标签: java jquery ajax response touchatag


【解决方案1】:

尝试检查页面是否返回一些值...

尝试添加警报成功以检查它..

【讨论】:

    【解决方案2】:

    试试下面的

    $.post( "uri", function(data) {
    alert( "success" + data.a + data.b );
    })
    

    如果这会返回您的数据,那么您的服务器端 servlet 正在工作

    【讨论】:

    • 假设服务器返回json头,否则会因为字符串没有属性而失败。
    猜你喜欢
    • 2014-04-23
    • 1970-01-01
    • 2016-04-17
    • 2017-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-15
    相关资源
    最近更新 更多