[英]how to call spring controller in jquery ajax success method
[英]How do I call a Spring controller method with Jquery AJAX
我有以下Spring Controller
@Controller
@RequestMapping("/accreq")
使用以下映射
@RequestMapping(value = "/defRoles", method=RequestMethod.GET)
public @ResponseBody String loadDefaultRoles(
@RequestParam(value="idGroup", required=false) String groupID
throws ServletException{
我正在嘗試使用以下jquery ajax調用此方法
$.ajax({
type: 'GET',
url: '/accreq/defRoles',
data: {idGroup: $('#infoGroup').val() },
success: function() {
alert("success");
}
});
請幫我弄清楚為什么即使在單擊按鈕時調用ajax方法也沒有調用Spring方法。 我已經使用firebug逐步完成了腳本,它肯定會觸及ajax函數。
首先,嘗試查看在瀏覽器中手動點擊URL時會發生什么
如果成功,請打開firebug中的請求跟蹤,看看firefox是否實際點擊了URL(以及響應的內容)
嘗試將此添加到您的jquery
error: function(jqXHR, textStatus, errorThrown) {
alert("error:" + textStatus + " exception:" + errorThrown);
}
}
你會看到是否發生錯誤
你在web.xml中使用哪種模式? 搜索標簽並查看您使用的模式。
例如,如果您使用:
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
你應該使用這樣的東西:
$.ajax({
type: 'GET',
url: '/accreq/defRoles.html',
data: {idGroup: $('#infoGroup').val() },
success: function() {
alert("success");
}
});
是否可能發生服務器端異常,這就是您沒有看到響應的原因。 如果您有調試,請確保拋出異常和/或您有相同的日志。
你的評論也有點含糊不清是什么意思,即使ajax methid被調用,spring methid也沒有被調用。 你能澄清一下嗎? 另外,如果firebug發出錯誤是什么錯誤,那么使用屏幕截圖或seomthing也可以幫助調用firebug o / p。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.