想用 js 處理輸入輸出,
做一個像表單的東西。
但其實不實際用 form 的提交功能,
只用 js 處理後回應,
或 ajax 向 server 發 request 回應。
如果用 form 標籤,
就會向 action="url" 的 url 發出請求,刷新頁面。
但我不想要刷新,
想要留在同一個頁面。
剛查到一個技巧是把 action="#formSubmit" ,
提交到一個 id ,(甚至也可以是不存在的 id 。)
然後用 hashChange 來偵測。
但這樣會不會有什麼問題?
因為從網址來看應該還是要發出如下請求:
GET http://domain.name/path/file.html#formSubmit?a=true&b=false
只是因為瀏覽器的實作上,
連到同一個頁面不同 id 不會重新請求。
而且 *提交到一個 id* 也太詭異了 = =|||
要用 post 還是 get ?
## 無關緊要 ###########################
另外我覺得要用 form 有二理由。
1. 語意化,這就是個表單,就該用 form 包起來。
而且不在 form 裡的 input 不會很奇怪嗎?
2. 這不是那麼重要了。
當初我想偵測 enter 輸入,又不想用 keyboard event 。
後來想到用 form 按 enter 會預設提交,
但提交又會刷新,不太好。
後來是把 input 改成 textarea ,
偵測最後一個字元。
達到類似 enter 提交的效果。