后台獲取前台表單數據


功能需求:后台返回狀態info

框架:SpringMVC

前后台交互方式選擇:ajax 而不是表單提交。

  1. 前台傳數據到后台
    需將form表單進行序列化
    采用jQuery內置的系列化方式 serialize
    $("form").eq(0).serialize();
    但所得到的結果並不是我們所想要的樣子,可自行再試遍。
    后來采用了其插件 serializeObject

    $.fn.serializeObject = function () {
    var obj = {};
    var count = 0;
    $.each(this.serializeArray(), function (i, o) {
    var n = o.name, v = o.value;
    count++;
    obj[n] = obj[n] === undefined ? v
    : $.isArray(obj[n]) ? obj[n].concat(v)
    : [obj[n], v];
    });
    //obj.nameCounts = count + "";//表單name個數
    return JSON.stringify(obj);
    };

    這樣就得到了,我們想得到的結果。(雖然這代碼還是有些Bug,例如復選框之內的,但對於我的代碼而言是可以的了。)

    var subjectData = $("form").eq(1).serializeObject();
    var url ="<%=request.getContextPath()%>/{0}";
    $.post(url,{"subjectData":subjectData},function(data){
    console.log(data.info);
    });

  2. 后台接受前台數據
    和正常一樣,用 @RequestParam注解
    緊接着我是采用gson方式將json格式數據解析成VO對象。
    本人博客:Gson解析


免責聲明!

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



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