[請益] 多選下拉式選單順序

看板PHP作者 (test)時間6年前 (2018/06/03 22:10), 6年前編輯推噓1(1020)
留言21則, 3人參與, 6年前最新討論串1/1
請問多選的下拉式選單要如何依照當初選擇的先後順序傳到下個頁面上。 因post過去後會變成原本選單順序,而不是選擇的先後順序,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.217.16.151 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1528035021.A.D6E.html ※ 編輯: testuser123 (49.217.16.151), 06/03/2018 22:11:43

06/03 23:41, 6年前 , 1F
多一個地方藏值 選取時值就塞進去 取消選擇就拿掉
06/03 23:41, 1F

06/03 23:42, 6年前 , 2F
可以是input 可以是session 可以是cookie 看你需求
06/03 23:42, 2F

06/04 07:46, 6年前 , 3F
你要用javascript在選取的時候記錄順序另外post
06/04 07:46, 3F

06/04 07:47, 6年前 , 4F
或者找可以保留順序的套件 順序放另外input傳送過去
06/04 07:47, 4F

06/04 07:49, 6年前 , 5F
否則貼過去實際上只是一個set 順序資訊會消滅
06/04 07:49, 5F

06/04 08:00, 6年前 , 6F
了解,我用javascript試試
06/04 08:00, 6F

06/06 15:37, 6年前 , 7F
小弟資質駑鈍,能否有sample可參考..試了幾個套件都
06/06 15:37, 7F

06/06 15:37, 6年前 , 8F
不能,網上找也看不太懂..
06/06 15:37, 8F
※ 編輯: testuser123 (49.217.16.151), 06/06/2018 15:38:12

06/06 18:30, 6年前 , 9F
簡單的想法是(1)放一個全域js array叫作seq
06/06 18:30, 9F

06/06 18:31, 6年前 , 10F
(2)在select每次change事件中找出現在按哪一個選項
06/06 18:31, 10F

06/06 18:32, 6年前 , 11F
(3)看seq裏面有沒有這個選項,如果有,把他刪掉
06/06 18:32, 11F

06/06 18:32, 6年前 , 12F
(4)如果沒有,把他push進seq
06/06 18:32, 12F

06/06 18:33, 6年前 , 13F
(5)準備一個hidden input叫作selseq
06/06 18:33, 13F

06/06 18:33, 6年前 , 14F
(6)每次seq改變,把他的值json_encode存到selseq
06/06 18:33, 14F

06/06 18:34, 6年前 , 15F
(7)selseq會一起post到後端,後端取值json_decode
06/06 18:34, 15F

06/06 18:34, 6年前 , 16F
就可以得到順序
06/06 18:34, 16F

06/06 18:35, 6年前 , 17F
更還真複雜 X(
06/06 18:35, 17F

06/06 18:36, 6年前 , 18F
http://loudev.com/ 這一個套件的keepOrder有沒有用過
06/06 18:36, 18F

06/06 18:37, 6年前 , 19F

06/06 18:37, 6年前 , 20F
第一個解答的套件也可以試試
06/06 18:37, 20F

06/06 23:05, 6年前 , 21F
感謝~趕緊研究一下
06/06 23:05, 21F
文章代碼(AID): #1R4_RDrk (PHP)
文章代碼(AID): #1R4_RDrk (PHP)