iT邦幫忙

1

onchange下拉式選單,選完選項會跳掉

2019-09-18 02:07:181506 瀏覽

我在選擇新北市的選項後,會跳回第一個選項
https://ithelp.ithome.com.tw/upload/images/20190918/20121207JJ426OVvUQ.png
以下是我的程式碼

            <form action="" name="sort1" method="POST">
                <select name="city" onchange="checkField(this.value)">
                    <option value="選擇縣市">選擇縣市</option>
                    <option value="台北市">台北</option>
                    <option value="新北市">新北</option>
                    <option value="桃園市">桃園</option>
                    <option value="新竹縣">新竹</option>
                    <option value="苗栗縣">苗栗</option>
                    <option value="台中市">台中</option>
                </select>
            </form>
3
小魚
iT邦高手 1 級 ‧ 2019-09-18 08:11:45

checkField的內容是什麼?
我覺得你是不是觸發了POST事件,
然後...
就跳回第一個了,

  1. 你要從後端帶一個參數到前端,
    然後判斷要選擇哪一個.
  2. 通常除了第一個提示選項以外,
    其他的都會用for之類的迴圈去跑,
    照你這樣子寫程式碼可能很長,
    而且不彈性.
看更多先前的回應...收起先前的回應...
hsien1026 iT邦新手 5 級 ‧ 2019-09-18 22:16:08 檢舉
           <form action="" name="sort1" method="POST">
                <select name="city" onchange="checkField(this.value)">
                    <option value="選擇縣市">選擇縣市</option>
                    <option value="台北市">台北</option>
                    <option value="新北市">新北</option>
                    <option value="桃園市">桃園</option>
                    <option value="新竹縣">新竹</option>
                    <option value="苗栗縣">苗栗</option>
                    <option value="台中市">台中</option>
                </select>
            </form>
        <script>
            function checkField(val)
            {
                var a = (val);
                location.href="websearch-branch.php?city=" +a;
            }
        </script>

不好意思,我是版主,那時候發問後帳號跳成別人的,後來登出又登入提問者就不見了,不好意思麻煩你了。
目前是學生,這是我的專題,因為有好多不懂的,麻煩你指教了。

小魚 iT邦高手 1 級 ‧ 2019-09-18 22:29:58 檢舉

hsien1026
我以為你用的是POST,
結果是GET...
/images/emoticon/emoticon01.gif
這我不知道該怎麼說了...
總之答案就在我上面的回答當中...
不過你這樣子寫要寫很多,
我稍微提示一下吧

<option value="台北市" <?PHP if($value == "台北市"){echo "selected"} ?>>台北</option>

沒有實際測試,
應該是這樣吧,
不過你還要去接收傳過來的資料...

小魚 iT邦高手 1 級 ‧ 2019-09-18 22:41:02 檢舉

然後...
我建議你,
找本書好好研究一下...
要不然我連教都不知道怎麼教了...

hsien1026 iT邦新手 5 級 ‧ 2019-09-18 23:38:47 檢舉

謝謝你的回覆,我再試試,我會去找本書好好學的,真的非常感謝。

0
cuxiapple
iT邦新手 4 級 ‧ 2019-09-18 08:19:41

你有用開發工具嗎 例如Adobe Dreamweaver Visual Studio .........php開發軟體
你是在醫院上嗎? 我最近很閒可以幫你寫

看更多先前的回應...收起先前的回應...

1.dreamweaver,你一定在開玩笑。業界都知道,不會用HTML寫網頁的話就不算是在寫網頁。就算你會寫網頁,用dreamweaver通常還是會當你不會寫網頁。
2.很閒就自己開專案來做,要幫人做就請收錢,但如果收錢你這個答案就等於是在廣告了。
3.如果你其實只是想練功,就明白說出來就好了。

cuxiapple iT邦新手 4 級 ‧ 2019-09-18 10:58:36 檢舉

HTML我看得懂阿 單純就是怕其他工具軟體版主看不懂啊

cuxiapple iT邦新手 4 級 ‧ 2019-09-18 10:59:14 檢舉
小魚 iT邦高手 1 級 ‧ 2019-09-18 11:12:50 檢舉

如果Html看不懂,
請不要跟我說你在學網頁.

工具軟體看不看得懂那就是個人問題了……
根本不需要怕……
然後不要因為很閒就幫人家寫code
不要去當慈善家。
更何況:人家是來發問,不是來找打手。

cuxiapple iT邦新手 4 級 ‧ 2019-09-18 12:27:44 檢舉

問題很奇怪
直接幫他寫不是比較快

問題一點都不奇怪
就他提供的資訊有限。
你看看小魚的回答。
直接明白指出對方沒提供的訊息。
所以……一點都不奇怪。

froce iT邦大師 5 級 ‧ 2019-09-18 14:45:04 檢舉

問題很奇怪
直接幫他寫不是比較快

是啊,不過這麼基本的問題,你現在幫他寫,下次你還要繼續幫他寫嗎?
這論壇一天到晚有人來問這種問題,請問你都要幫他寫嗎?

wingkawa iT邦新手 4 級 ‧ 2019-09-18 15:37:18 檢舉

不好意思我打個岔問另一個問題
請問是不是只有我看不到發問人的ID,這樣應該不正常吧XD

hsien1026 iT邦新手 5 級 ‧ 2019-09-18 22:22:04 檢舉

不好意思是我沒有附上完整的CODE,我先謝謝大家都是想幫我,也謝謝大家願意幫我,我知道我的問題還很基礎,也真的希望大家多多指教,我也希望能學點東西,再次謝謝大家的幫忙。

3
dragonH
iT邦大師 3 級 ‧ 2019-09-18 09:11:15

問題不在你給的這個 html code

請貼所有有關的 code

e.g. checkField()

codepen

看更多先前的回應...收起先前的回應...
hsien1026 iT邦新手 5 級 ‧ 2019-09-18 22:26:35 檢舉

謝謝你的回覆,我有附再最上面的回覆上了,非常感謝。

dragonH iT邦大師 3 級 ‧ 2019-09-18 22:31:43 檢舉

hsien1026

你的 function

            function checkField(val)
            {
                var a = (val);
                location.href="websearch-branch.php?city=" +a;
            }

location.href 會有類似換頁的動作

然後你應該是換到同個頁面

所以你認為的選完選項會跳掉

其實是頁面重新 load

最後也就看到你 select 預設的第一個選項

不是很懂你這樣的目的

是想要保留選取的選項嗎

小魚 iT邦高手 1 級 ‧ 2019-09-18 23:25:23 檢舉

我覺得最大的問題是這個...
https://ithelp.ithome.com.tw/upload/images/20190918/20105694isI7Y9lABq.jpg

dragonH iT邦大師 3 級 ‧ 2019-09-18 23:30:10 檢舉

/images/emoticon/emoticon37.gif

hsien1026 iT邦新手 5 級 ‧ 2019-09-18 23:45:47 檢舉

小魚
這是真的...
我會再試試的/images/emoticon/emoticon02.gif

2
ccutmis
iT邦高手 10 級 ‧ 2019-09-18 09:24:55

有天晚上我跟麻吉約好要去夜遊,正準備出門時被阿罵攔下來。

阿罵 : 這麼晚了不要出去賴賴剉,待在家最好。

我 : 阿罵,七月不是過了嗎?

阿罵 : 憨孫,七月過後的鬼更兇啊,因為... 它們都是被通緝的。

我 : ...

/images/emoticon/emoticon38.gif

看更多先前的回應...收起先前的回應...
dragonH iT邦大師 3 級 ‧ 2019-09-18 09:28:03 檢舉

/images/emoticon/emoticon37.gif

iT邦新手 5 級 ‧ 2019-09-18 09:55:56 檢舉

/images/emoticon/emoticon01.gif

ccutmis iT邦高手 10 級 ‧ 2019-09-18 09:58:47 檢舉

https://media.tenor.com/images/1d7be2a6bde81d68277e361e52a0778b/tenor.gif

先不要管7月了……
好不容易現在9月了你知道嗎???

ccutmis iT邦高手 10 級 ‧ 2019-09-18 10:22:06 檢舉

/images/emoticon/emoticon04.gif

dragonH iT邦大師 3 級 ‧ 2019-09-18 10:25:08 檢舉

通緝了兩個月的意思嗎XD /images/emoticon/emoticon48.gif

小魚 iT邦高手 1 級 ‧ 2019-09-18 11:13:55 檢舉

你確定不是快過追溯期(20年)的鬼嗎?
/images/emoticon/emoticon05.gif

七月鬼門開
九月校門開

ccutmis iT邦高手 10 級 ‧ 2019-09-18 12:03:58 檢舉

沒回校門的比沒回鬼門的恐怖...

ccutmis
你說的那個叫做: 8 + 9 , 不 E Y

我要發表回答

立即登入回答