問題:在一個form表單中,引入過多的頁面,須要提交的參數過多,此時後面必定參數的值後臺是獲取不到的html
解決:在form標籤添加enctype='multipart/form-data'web
在開發中發現一個bug,前臺提交的數據到後臺獲取的時候被截斷了,前臺代碼chrome
我用js給input標籤賦值,這個值長度很長很長(如:一段超長的html代碼),$("input[name='a']").val(很長的字符串。。。);這個時候form表單提交$("#myform").submit(),在後臺獲取a的值是被截斷的,不完整。很納悶,在前臺console.log($("input[name='a']").val());發現,在前臺給a標籤賦值的時候,數據已經被截斷了。(測試瀏覽器chrome)。input標籤的長度通常的無限制的,這個我就不知道問題出在哪兒了,多是web容器本身的限制防止內存溢出吧。但問題總得解決,首先是想辦法將給a賦值是正確完整的,我嘗試將input標籤的type換成hidden,結果ok,console的結果:a的值是正確完整的,但是到後臺取不到值。。。。。。。。。。。。。。。。。。。尼瑪,若是將a 的值的長度設置的比較短的話,後臺就能正常獲取到值的。在嘗試了不少辦法後,依然無果,這個時候我在想,form能提交附件,附件內容但是很大的,我將form表單的格式換一下,添加enctype='multipart/form-data',測試ok,經過!真尼瑪蛋疼瀏覽器
修改後的form表單post
最後得出的結論測試
1:input標籤type=text在chrome瀏覽器下是有長度限制的,具體有多長沒測試過,其餘瀏覽器下什麼狀況也沒測試spa
2:input標籤type=hidden的長度沒有限制,能容納很長很長的字符串.net
3:對於超長字符串的form表單提交,須要以附件的格式提交,在form標籤添加enctype='multipart/form-data'。orm