1 問題背景
項目中有這樣的需求:根據不同的業務邏輯填寫不同的表單提交到數據庫中, 但是不同的表單之間又有一些字段是一樣的,也就是說在form表單裏存在多個name值相同的 input輸入框,這樣在提交的時候就會有這麼一個問題,有幾個相同name的值提交, 就會傳回給後臺幾個相同的值,默認是以逗號分隔的,即使是空值,也會逗號把兩個空值隔開。 這就給後臺處理造成了不便,問題由此產生。
2 解決方法
2.1 後臺處理
直接把問題拋給後臺,讓後臺去解析,不是不可以,但是很明顯不是好的解決方案, 既顯示不出來前臺的業務功底,更會讓後臺很反感。
2.2 前端處理
2.2.1 分析
表單之間存在互斥關係,也就是說,相同name屬性的表單並不能同時提交, 每次提交只不過是根據規則提交符合要求的表單,這樣就給我們處理帶來了便利。
2.2.2 解決方式二(承接上一個方案)
將多個不同時提交的字段放入到多個不同的表單中提交,把大的form表單切分爲多個小的form表單,每次提交時只需提交需要的表單。
兩種方法優劣對比:第二種方式要更好一點,第一種直接修改了dom結構,再次進行重複或者其他操作可能會受到影響,第二種方式則沒有此項弊端。
個人觀點:僅供參考
歡迎志趣相投的朋友一起學習交流!
本人qq:906570770
技術資料分享羣:272811256