如何使用Javascript读取并选择下拉列表中的最后一个索引值?
HTML的一个示例。
<select name="unqiue">
<option value="number:1" label="1">1</option>
<option value="number:2" label="2" selected="selected">2</option>
<option value="number:3" label="3">3</option>
<option value="number:4" label="4">4</option>
</select>
下拉值可能不同,我需要选择并选择最后一个值4。
答案 0 :(得分:2)
您可以使用document.querySelectorAll('select[name="unqiue"] option:last-child')[0]:
示例:
var lastOpt = document.querySelectorAll('select[name="unqiue"] option:last-child')[0];
//
// To select this element:
//
lastOpt.selected = true;
//
// To get the value
//
var val = lastOpt.value.replace(/\D*/, '');
console.log(val);
&#13;
<select name="unqiue">
<option value="number:1" label="1">1</option>
<option value="number:2" label="2" selected="selected">2</option>
<option value="number:3" label="3">3</option>
<option value="number:4" label="4">4</option>
</select>
&#13;
答案 1 :(得分:0)
您的示例似乎表明var object = {
"A": "a",
"B": "b",
"C": "c"
};
function lookup1(value) {
return object[value];
}
function lookup2(value) {
return {
"A": "a",
"B": "b",
"C": "c"
}[value];
}
var dateBefore = new Date().getTime();
for (var i = 0; i < 100000000; i++) {
var a = lookup2('A');
}
var dateAfter = new Date().getTime();
console.log(dateAfter - dateBefore);
var dateBefore = new Date().getTime();
for (var i = 0; i < 100000000; i++) {
var a = lookup1('A');
}
var dateAfter = new Date().getTime();
console.log(dateAfter - dateBefore);
是标记中select
的唯一值。
您可以使用document.querySelector
获取此项目,然后阅读或操作它。
name
const unique = document.querySelector('select[name="unqiue"]');
const valueLast = unique.lastElementChild.value;
console.log(valueLast);
const textLast = unique.lastElementChild.textContent;
console.log(textLast);
unique.selectedIndex = unique.length - 1;