前端傳值給後臺的三種方法

一、經過ajax,示例:javascript

傳給後臺的數據經過json封裝起來,再用ajax將json傳到後臺,ajax是用到Jquery的ajax,在jsp先加入Jquery的引用java


<script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>jquery


js傳值的方法以下ajax


function testAjax() {spring

   var users=[{json

       name:'張三',mvc

       age:'21',app

       birth:'1994-12-12'dom

    },jsp

   {

       name:'李四',

       age:'20',

       birth:'1995-12-11'

    },

   {

       name:'wangwu',

       age:'20',

       birth:'1995-12-11'

    }];

   $.ajax({

        type:'POST',

        data:JSON.stringify(users),

        contentType :'application/json',

        dataType:'json',

        url :'user/saveJsonUser.do',

        success :function(data) {

            alert("OK");

        },

       error :function(e) {

          alert("error");

       }})     

}


後臺處理:用到springmvc這裏參數中要加上@RequestBody,@RequestBody將HTTP請求正文轉換爲適合的HttpMessageConverter對象。


@RequestMapping(value="/saveJsonUser.do",method=RequestMethod.POST)

          public Map saveJsonUser(@RequestBody User[]users){

               for(Useru:users){

                   System.out.println(u.getName()+"  "+u.getAge()+"  "+u.getBirth());

               }

          Map result=newHashMap();

          result.put("success","123");

          return result;

}


二、在action中請求後臺的方法。可是若是數值在傳給後臺以前須要校驗,能夠在form中的onsubmit調用js方法進行校驗,js方法的返回值爲true時,觸發action,返回false時,action不起做用。

三、經過dom獲取標籤,觸發標籤的submit方法,直接提交數據到後臺


function query() {

    var inputs = document.getElementsByName("sex");//對象是單選選項

    for(var i = 0; i < inputs.length; i++) {

       if(inputs[i].checked) {//是否選中

          var sex = inputs[i].value;

          document.getElementById("query").action = projectName+"/query.do?currentPage=1&stsex="+ sex;

           break;

       }else{

         document.getElementById("query").action = projectName+"/query.do?currentPage=1";

      }

 }

   document.getElementById("query").submit();//提交到後臺

}

相關文章
相關標籤/搜索