經過一些研究和測驗,我發現兩種方法都會產生相同的結果。所以我只是想知道兩者之間有什么區別:
function buildUrl() {
compType = document.querySelector('[name = "c-type"]');
compTypeValue = compType.value;
}
和
function buildUrl() {
compType = document.querySelector('[name = "c-type"]');
compTypeValue = compType.options[compType.selectedIndex].value;
}
<form id="custom-drop">
<select name="c-type" id="compressor-type">
<option value="screw">Screw</option>
<option value="scroll">Sroll</option>
<option value="centrifugal">Centrifugal</option>
<option value="piston">Piston</option>
</select>
</form>
我確實閱讀了與此主題相關的問題(this和this),但我找不到對它們差異的任何解釋。
uj5u.com熱心網友回復:
select 元素還會跟蹤當前所選專案的值和所選專案的索引。
在您的第一個示例中,您訪問當前所選選項的值。在第二個中,您將獲得整個選項元素,其中包含所選索引位置的元素。通過訪問它的值成員,你然后回傳它的值。
通過這個,你會得到相同的結果。但是,我將第二種方法稱為 hacky 并且不考慮這樣做。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/373576.html
標籤:javascript 形式 功能 落下 html-选择
上一篇:在html js上制作實時表單
