使用ajax时无法调用Spring控制器
在Spring中使用ajax时,我遇到了一个问题 当我从选择框中选择区域或在屏幕上输入商店名称时,我希望得到过滤器列表结果,所以我的想法是使用Ajax来解决这个问题。但是Ajax不能调用特定控制器$.Ajax的url属性中的内容 以下是我的档案:使用ajax时无法调用Spring控制器,ajax,spring,url,model-view-controller,controller,Ajax,Spring,Url,Model View Controller,Controller,在Spring中使用ajax时,我遇到了一个问题 当我从选择框中选择区域或在屏幕上输入商店名称时,我希望得到过滤器列表结果,所以我的想法是使用Ajax来解决这个问题。但是Ajax不能调用特定控制器$.Ajax的url属性中的内容 以下是我的档案: JSP: 应用存储搜索的CSS id <form:form modelAttribute="appliedStoreInput" id="appliedStoreSearch"> <form:select path="reg
<form:form modelAttribute="appliedStoreInput" id="appliedStoreSearch">
<form:select path="regionId" cssClass="form-control">
<form:option value="" label="Toàn quốc"></form:option>
<form:options items="${listRegions}" />
</form:select>
<input type="email" class="form-control"placeholder="Tìm kiếm cửa hàng" name="storeNameInp" />
<div class="input-icon">
<i class="fa fa-search"></i>
</div>
</form:form>
@RequestMapping(value="/search_applied_store_ajax",method=RequestMethod.POST,produces="application/json" )
public @ResponseBody List<AppliedStoreDto> searchAppliedStoreAjax( @ModelAttribute("appliedStoreInput")AppliedStoreInputDto appliedStoreinput){
System.out.println("in ra 1 so thu gi go");
List<AppliedStoreDto> listAppliedStore = null;
appliedStoreinput.setCompanyId(7);
try {
// get list applied store
listAppliedStore = promotionLogic.findAllAppliedStore(appliedStoreinput);
} catch (Exception e) {
logger.error(e.getMessage());
}
return listAppliedStore;
}
@RequestMapping(value=“/search\u applicated\u store\u ajax”,method=RequestMethod.POST,products=“application/json”)
public@responseBy列表searchAppliedStoreAjax(@ModelAttribute(“appliedStoreInput”)appliedStoreInput到appliedStoreInput){
System.out.println(“in ra 1 so thu gi go”);
List listAppliedStore=null;
appliedStoreinput.setCompanyId(7);
试一试{
//获取应用于存储的列表
listAppliedStore=promotionLogic.findAllAppliedStore(appliedStoreinput);
}捕获(例外e){
logger.error(例如getMessage());
}
返回listAppliedStore;
}
请帮助我,tks所有人 如果ajax调用的contentType为“application/json”,我会考虑将consumes=“application/json”添加到您的RequestMapping中,并将ModelAttribute替换为RequestBodySean的回答基本正确。只是添加了确切的细节。函数声明应该如下所示
@RequestMapping(value="/search_applied_store_ajax",method=RequestMethod.POST,produces = { MediaType.APPLICATION_JSON_VALUE}, consumes = {
MediaType.APPLICATION_JSON_VALUE} )
public@ResponseBody List searchAppliedStoreAjax(@RequestBody AppliedStoreInputDto appliedStoreinput to appliedStoreinput){akuma8,你能帮我吗?你能添加你的控制器映射吗?这里你只添加了处理程序方法。同时检查请求是否真的发送了。
@RequestMapping(value="/search_applied_store_ajax",method=RequestMethod.POST,produces = { MediaType.APPLICATION_JSON_VALUE}, consumes = {
MediaType.APPLICATION_JSON_VALUE} )