form表單提交時多個相同name屬性問題解決方案

1 問題背景

項目中有這樣的需求:根據不同的業務邏輯填寫不同的表單提交到數據庫中, 但是不同的表單之間又有一些字段是一樣的,也就是說在form表單裏存在多個name值相同的 input輸入框,這樣在提交的時候就會有這麼一個問題,有幾個相同name的值提交, 就會傳回給後臺幾個相同的值,默認是以逗號分隔的,即使是空值,也會逗號把兩個空值隔開。 這就給後臺處理造成了不便,問題由此產生。

2 解決方法

2.1 後臺處理

直接把問題拋給後臺,讓後臺去解析,不是不可以,但是很明顯不是好的解決方案, 既顯示不出來前臺的業務功底,更會讓後臺很反感。

2.2 前端處理

2.2.1 分析

表單之間存在互斥關係,也就是說,相同name屬性的表單並不能同時提交, 每次提交只不過是根據規則提交符合要求的表單,這樣就給我們處理帶來了便利。

2.2.2 解決

把每一個表單放入一個大的div中,在提交之前(或者索性在展示之前) 就把不會用到的表單所在的div刪掉就可以了,如果是用的jQuery,那麼可以直接使用 remove()方法。如果使用的是其他的JavaScript庫,就需要找到對應的方法了, 一個正常的庫都是應該具備這些基礎方法的。

 

 

 

歡迎志趣相投的朋友一起學習交流! 
本人qq:906570770 
技術資料分享羣:272811256

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章