java - 使用 JQuery ajax 发布表单数据时出现无效参数错误

标签 java jquery spring spring-mvc

我正在开发一个网络应用程序,我必须在不提交表单的情况下显示搜索结果。所以我使用了 jQuery 的 $.ajax() 函数。看看吧

$('#search').click(function() {
                        alert("submit handler has fired");
                        $.ajax({
                            url: 'cityResults.htm',
                            data: $('#cityDetails').serialize(),
                            type: 'json',
                            success: function(data){ 
                                alert(data);
                            },
                            error: function(jqXHR, textStatus, errorThrown){
                                alert('error: ' + textStatus + ': ' + errorThrown);
                            }
                        });
                        return false;//suppress natural form submission
                    });

这是我的 HTML 标记。我正在使用 Spring MVC 3 框架

<form:form id="cityDetails" method="post"
                    action="cityResults.htm">
                    <table class="tdbgact border">
                        <tr>
                            <th>State:&nbsp;<span class="required">*</span></th>
                            <td>
                            <form:select path = "state" id = "state">
                            <form:option value="">---Select</form:option>
                            <form:options items="${stateList}"/>
                            </form:select>
                           </td>                        
                           <th><form:checkbox path="status" value="Active"/>Active</th></td> 
                           <td colspan="5"><th><form:checkbox path="status" value="Inactive"/>Inactive</th></td>
                            <tr>   
                            <td colspan="2"><input type="button" id="search" class="buttonSubmit" value="City" /></td>
                            </tr>
                         </tr>   
                    </table>

这是我的 Controller 代码

@RequestMapping(value = "/cityResults.htm", method = RequestMethod.POST)        
public @ResponseBody String schemeResults(ModelMap model ,@ModelAttribute("SpringWeb")CityMaster bean, 
           BindingResult result) {
    functionName = "cityResults";
      List<CityMaster> cities = new ArrayList() ;
     logger.info("In "+className+" - "+functionName+" ");
     if(result.hasErrors())
     {

     } 
     else{
     ApplicationContext context = 
          new ClassPathXmlApplicationContext("Beans.xml");
   MasterJDBCTemplate dao = 
   (MasterJDBCTemplate)context.getBean("masterJDBCTemplate");   
   String[] cityStatus = bean.getStatus();
   if(cityStatus == null)
   {

   }
   cities = dao.cityList(bean);
   model.addAttribute("cityList", cities ); 
     }
     return cities.get(0).getCity();
}

我在警报框中收到错误消息,提示参数无效。这意味着我的 ajax 调用失败。这意味着我必须更改我的 Controller 代码。我需要做哪些改变?或者我还有什么遗漏的吗?

最佳答案

关于java - 使用 JQuery ajax 发布表单数据时出现无效参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19900190/

相关文章:

javascript - 通过 AJAX 传递图像

javascript - "JQuery Interface file"for Flow(来自 Facebook 的 JavaScript 静态类型检查器)?

java - 如何在 Spring-AMQP 中使用 Jackson2JsonMessageConverter 处理内容类型 null

java - byte 比 boolean[8] 更有效吗

java - 安装 TPTP 配置文件工具

java - 在 Spring Boot 应用程序中调用 HTTPS SOAP Web 服务

JavaScript 对象超出范围

java - Spring Boot JPA 获取对 EntityManagerFactory 的引用

spring - 如何并发处理spring集成jms channel

java - JPA - 将 double 格式从 aaa、bbb 转换为 aaa.bbb