Jquery 序列化表單為對象

   <form action="#">
    <pre> 
           姓名: <input type="text" name='username'/>
           性別: <label for='sex1'> <input type="radio" name ='sex' id="sex1" value="男" checked/>男 </label> <label for="sex2"><input type="radio" name ='sex' id="sex2" value="女"/>女</label>    
           愛好: <label for="hoby1"><input type="checkbox" name="hoby" id="body1" value="reading">看書</label><label for="hoby2"><input type="checkbox" name="hoby" id="body2" value="writing">寫字</label><label for="hoby3"><input type="checkbox" name="hoby" id="body3" value="gaming">玩游戲</label>
           描述: <textarea name="remark" cols="30" rows="10"></textarea>
           <button id="objserailize" type="button">序列化為對象</button>
    </pre>
   </form>
<script>
   $.fn.serializeObject = function (){
       var o ={};
       var a = this.serializeArray();
       $(a).each(function(){
           // 判斷name是否已存在
           if(o[this.name]){
                // 判斷是否checkbox第一個(gè),如果是轉(zhuǎn)化為數(shù)組
                if(!o[this.name].push){
                    o[this.name] = [o [this.name]];
                }
                o[this.name].push(this.value);
           }else{
               o[this.name] = this.value;
           }
       })
       return o;
   }

    $(function(){
        $("#objserailize").click(function(){
                var params = $('form').serializeObject();
                console.log(params);
        });

    })
</script>
輸出結(jié)果
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容