javascript - 如何获得选择框中所有值的列表?

标签 javascript html forms selection

我被难住了。我有一个带有下拉列表的表单,我想获取列表中所有值的列表。我从 w3 schools 中提取了以下示例(是的,我知道它不可靠,但堆栈溢出的其他解决方案似乎与此非常相似)。它对我不起作用,我尝试将它插入 jsfiddle,但没有成功。

HTML:
<form>Select your favorite fruit:
    <select id="mySelect">
        <option value="a">Apple</option>
        <option value="o">Orange</option>
        <option value="p">Pineapple</option>
        <option value="b">Banana</option>
    </select>
</form>
<button type="button" onclick="displayResult()">Display text of all options</button>

JavaScript:

function displayResult() {
    var x = document.getElementById("mySelect");
    var txt = "All options: ";
    var i;
    for (i = 0; i < x.length; i++) {
        txt = txt + "\n" + x.options[i].value;
    }
    alert(txt);
}

不在 jsfiddle 上工作:http://jsfiddle.net/WfBRr/1/

但是,它在他们的网站上有效: http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_option_text2

关于如何解决这个问题有什么想法吗?

最佳答案

你有两个问题:

1) 包含 HTML 的顺序。尝试在 fiddle 的 JavaScript 设置中将下拉菜单从“onLoad”更改为“no wrap - head”。

2) 您的函数打印值。你真正追求的是文字

x.options[i].text; 而不是 x.options[i].value;

http://jsfiddle.net/WfBRr/5/

关于javascript - 如何获得选择框中所有值的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18113495/

相关文章:

javascript - 为什么在 Ant Design 表单中自定义输入控件无法正确验证?

javascript - 如何防止在表单中输入无效字符?

forms - 即使在 reCAPTCHA v2(不可见)和 Honeypot 集成之后,Spambots 仍会继续创建用户注册 - 我还能做什么?

javascript - Google Cloud Translate API 中缺少 "translate.js"

javascript - 如果angularjs中的状态码为403则注销

javascript - 使用Javascript获取标签值的内容

html - 使用 pandoc for html/pdf/docx 在 markdown 中正确调整 PNG 图像的大小

javascript - Meteor:在事件上显示随机集合对象

javascript - javascript中的HTTP Content-Length header 计算

html - 样式导航栏 : interaction between different styling settings