iT邦幫忙

1

JavaScript Select問題

小弟最近碰到下拉式選單,遇到了一問題,狀況如下

<tr>
	<td>
		<select value="2">
			<option value="1">1</option>
			<option value="2">2</option>
        </select>
	</td>
	<td>
	</td> ...
</tr>

我想要預設下單式選單是2,出來結果是選在2沒錯

但是卻不能更改他,怎麼選都會回到2

因為之前這樣寫沒問題,想請問為什麼會這樣呢?

是因為放到td裡面才會這樣嗎?

我目前是用selected來解決,但是每一個option都要加判斷感覺不是很直覺

框架是用ReactJS

感謝~~

每個option都要加判斷?不是讓他用迴圈跑?
都用框架了,畫面應該要依據資料的內容來變動或呈現不是?
gary11159 iT邦新手 5 級 ‧ 2020-07-08 13:59:00 檢舉
感謝建議~

2 個回答

2
浩瀚星空
iT邦超人 1 級 ‧ 2020-07-08 13:57:40
最佳解答

其實,select 正確的指定是

        <select>
			<option value="1">1</option>
			<option value="2" selected>2</option>
        </select>

如果不想每一個option寫判斷的話。
可以用一段javascript

selectObject.value = 2

來處理。
但不要直接給dom value的值。會被鎖定。因為我以前也幹過這樣的事過。

gary11159 iT邦新手 5 級 ‧ 2020-07-08 14:00:29 檢舉

原來如此,感謝/images/emoticon/emoticon07.gif

2
dragonH
iT邦超人 5 級 ‧ 2020-07-08 13:57:38

codepen

我沒看過在 selectvalue

老實說

gary11159 iT邦新手 5 級 ‧ 2020-07-08 14:00:48 檢舉

這樣看來是我原本就寫錯了,感謝

froce iT邦大師 1 級 ‧ 2020-07-08 16:34:11 檢舉

我沒看過在 select 用 value

有啦,你沒指定的話value等於innerText
有指定的話這個select送出的就是value

<select>
  <option value="1">第一</option>
  <option value="2" selected>第二</option>
</select>
dragonH iT邦超人 5 級 ‧ 2020-07-08 22:16:00 檢舉

/images/emoticon/emoticon26.gif

我要發表回答

立即登入回答