2012-08-13 60 views
1

我试图将按钮动作映射到控制器功能。 当我试着用:Spring MVC:使用控制器请求映射输入按钮(未提交)

@RequestMapping(method = RequestMethod.POST) 
public void processValidateGenerate 
.... 

<input type="button" id="continue" name="continue"...> 

现在我想补充另一个按钮,所以要区分betweent他们,我加入这样的第一个动作是工作得很好,但:

@RequestMapping(method = RequestMethod.POST, params="continue") 
public void processValidateGenerate 
.... 

但是当按钮被按下时,函数不再被调用,我认为这只适用于提交输入。

是否有任何解决方案来做到这一点与非提交输入?

谢谢

回答

2

您可以使用JavaScript/jQuery的做一个Ajax调用并击中了所需的控制方法。

function doSomething(){ 
$.ajax({         //This is a jquery ajax call. You need to inlude jquery js files to do 
type: "POST",        // this operation 
url: //URL, 
data: //JSON data 
}).done(function(msg) { 
alert("Operation done: " + msg); 
window.location.href=contextPath+"/newURL";  //If you want to go to a new page 
}); 
} 

现在添加新的按钮(它并不重要,即使它不是一个按钮,一个div就足够了)。使用onclick函数并给出javscript函数名称。

<input type="button" id="newcontinuebutton" name="continue" onclick=doSomething()...> 

您可以检查jQuery的AJAX细节here

我认为这将帮助你。