ajax與controller之間傳遞數據的方法


最近在寫一個java項目,用的是ssm框架,前台就是jsp+js,初次開發,遇到了很多問題,今天上午解決的是controller之間的傳遞。

因為要用到json傳遞數據,所以要先導入json的三個jar包。

然后需要配置springmvc.xml文件

 <!--json格式數據轉換的配置  -->
    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
        <property name="messageConverters">
            <list>
                <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">             
                </bean>
            </list>
        </property>
    </bean>

首先看jsp頁面,我是想讓js獲取input的輸入值,然后進行后台驗證用戶名是否已經存在。

<input id="username" class="input-text-lg " name="username"> 

然后看jsp頁面中的js

 $(function(){
     $("#username").blur(function(){
         var usernameInput = this.value;
         $.ajax({
            url:"${contextPath}/checkUserName.action",
            type:"POST",
            dataType:"json",
            data:{"usernameInput":usernameInput},
            success:function(data){
                var isExist = data.isExist;
                if(isExist)
                    alert("用戶名已經存在");
                else
                    alert("該用戶名可以使用");
                },
            error:function(data){
                alert("error");
            }
         } );
     })
 })

最后是controller層的代碼

     @RequestMapping(value = "/checkUserName.action",method = RequestMethod.POST)
        @ResponseBody
        public Map<String, Object> checkUserName(String usernameInput, Model model, HttpServletRequest request, HttpServletResponse response)
                throws ParseException {
            Map<String, Object> resultMap =  new HashMap<String,Object>();
            int count = userService.checkUserName(usernameInput);
            boolean isExist=(count>0?true:false);
            resultMap.put("isExist", isExist);
            return resultMap;
        }

然后就可以了,一定不要忘記導入java包和配置xml文件!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM