2013-03-01 162 views
0

我是Ajax新手。我試圖打電話給我控制器的方法,但是從AJAX調用不調用URL我正在給..我在這裏的控制方法,在我的JSP文件AJAX調用..Ajax不調用控制器方法

@RequestMapping(value = "/getdata", method = RequestMethod.POST) 
public @ResponseBody String add(@RequestParam(value="userDetailObject", required=true) User_Details u,Model model) { 
    System.out.println("In the controller method.."); 
    String result=null; 
       result="From controller :"+u.getEmail(); 
       System.out.println("at controller .."+result); 
    return result; 
} 

和我的Ajax是

//script type="text/javascript" src="../jquery-1.4.4.js" 

var jq = jQuery.noConflict(); 

     function getData() { 
      alert("hello"); 
      // get the form values 
     var email = $('#email').val(); 
     // var education = $('#education').val(); 
      $.ajax({ 
       type : 'POST', 
       dataType: 'json', 
       url : "/SpringDemoSts/getdata", 
       data : 'email=' + email, 
       success : function(response) { 
        // we have the response 
        //$('#info').html(response); 
        $('#email').val(response); 
        //$('#education').val(''); 
       }, 
       error : function(e) { 
        alert('Error: ' + e); 
       } 
      }); 
     } 
/script 

我在這裏做錯了什麼是錯的?

回答

0

在AJAX中定義的URL:

/SpringDemoSts/getdata 

是didfferent到所示

/getdata 

的requestmapping和參數被稱爲userDetailObject和你的Ajax調用不正確地定義數據,您正在使用要求參數樣式作爲數據。實際上你需要json /一個簡單的原始字符串或字符串。

+0

OK饒人,我只是用簡單的串...但仍然無法在我的方法調用.... – Bhushan 2013-03-01 12:57:46

+0

我也改變了我的網址爲\t \t URL:「/的GetData」, – Bhushan 2013-03-01 12:58:10

+0

我不如果多數民衆贊成他糾正請求映射,您也可以在類級別定義映射。你的數據沒有正確映射到paraemter我想,你試圖從電子郵件只創建user_object。這贏得了勝利。 – NimChimpsky 2013-03-01 13:03:05

相關問題