2013-10-10 27 views
1

,我有以下的jQuery Ajax代碼:Spring MVC的響應jQuery的AJAX調用不加載

<script> 

    $(function() { 
     $("button").click(function() { 
      $.ajax({ 
       url : "signin.html", 
       type : "post", 
       cache: false, 
       data : "userName=" +$("#userName").val()+ '&password='+$("#password").val(), 
       success : function(data) { 
        var obj = jQuery.parseJSON(data); 
        var msg = '<span>' + obj.message + '</span>'; 
        $('#message').html(msg); 
       }, 
      //EDIT 
    error: function(){      
     alert('Error in response...'); 
    } 
      }); 
     }); 
    }); 
</script> 


<div id="message"></div> 

我有春天控制器,它發送消息作爲我正努力在消息框中的打印響應。我看到控制器處理的請求,但控制器的消息沒有顯示在頁面中。我在這裏做錯了什麼?

public @ResponseBody ModelAndView loginUser(request attributes here){ 

      isUserExisits = service.authenticateUser(userBO); 
      if (isUserExisits) { 
       model.addObject("message", "Login Success"); 
      } else { 
       model.addObject("message", "Login Failed"); 
      }} 

編輯: - 我'成功'後添加錯誤回調和錯誤回調函數被調用。

回答

1

您正在返回一個ModelAndView對象並訪問ModelAndView類中不存在的屬性。如果您只需要顯示一條消息,請將返回類型更改爲String

public @ResponseBody String loginUser(request attributes here){ 

      isUserExisits = service.authenticateUser(userBO); 
      if (isUserExisits) { 
       return "Login Success"; 
      } else { 
       return "Login Failed"; 
      }} 

和在網頁上,你可以直接使用它。

$(function() { 
     $("button").click(function() { 
      $.ajax({ 
       url : "signin.html", 
       type : "post", 
       cache: false, 
       data : "userName=" +$("#userName").val()+ '&password='+$("#password").val(), 
       success : function(data) { 

        var msg = '<span>' + data + '</span>'; 
        $('#message').html(msg); 
       } 
      }); 
     }); 
    }); 
+0

我改變了我的控制器,但stil不工作。我有成功警告回電哪個不工作!!!!。 –

+0

控制器代碼是否成功執行?如果是,那麼瀏覽器Web控制檯上的錯誤消息是什麼? –

+0

是的控制器代碼得到執行,並且我的錯誤回調函數被調用'錯誤響應...' –